NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/59392: btsco(4): mutex_vector_enter,548: locking against myself at btsco_sco_disconnected()
>Number: 59392
>Category: kern
>Synopsis: btsco(4): mutex_vector_enter,548: locking against myself at btsco_sco_disconnected()
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat May 03 19:00:00 +0000 2025
>Originator: Andrius V
>Release: NetBSD 10.1
>Organization:
>Environment:
>Description:
On attempt to test Sony WH-CH720N bluetooth headset on NetBSD 10.1 my system crashed. I mainly repeated steps from the https://www.netbsd.org/docs/guide/en/chap-bluetooth.html#chap-bluetooth-audio-headset documentation:
added headset address to /etc/bluetooth/hosts
executed
btpin -d ubt0 -a headset -p 0000
btdevctl -d ubt0 -a headset -s HSET -A
switch to new device
audiocfg default 1
finally executed
bthset -m /dev/mixer2 -v
Unfortunately, something doesn't work well with this setup and no audio was available (also headset seemingly was still blinking led light), thus I click ctrl+c on bthset, which caused the crash:
Mutex error: mutex_vector_enter,548: locking against myself
lock address : ffffdfe0741cf2c0
current cpu : 0
current lwp : 0xffffdfe072145480
owner field : 0xffffdfe072145480 wait/spin: 0/0
panic: lock error: Mutex: mutex_vector_enter,548: locking against myself: lock 0xffffdfe0741cf2c0 cpu 0 lwp 0xffffdfe072145480
cpu0: Begin traceback...
vpanic() at netbsd:vpanic+0x183
panic() at netbsd:panic+0x3c
lockdebug_abort() at netbsd:lockdebug_abort+0x114
mutex_vector_enter() at netbsd:mutex_vector_enter+0x41b
btsco_sco_disconnected() at netbsd:btsco_sco_disconnected+0x41
hci_link_free() at netbsd:hci_link_free+0x199
hci_event() at netbsd:hci_event+0x8d7
hci_intr() at netbsd:hci_intr+0x136
softint_dispatch() at netbsd:softint_dispatch+0x3ff
DDB lost frame for netbsd:Xsoftintr+0x4c, trying 0xffffa2124b3fd0f0
Xsoftintr() at netbsd:Xsoftintr+0x4c
--- interrupt ---
fc6a3220487b346:
cpu0: End traceback...
Upon discussion it seems that bt_lock usage is not correct for btsco_sco_disconnected()
https://nxr.netbsd.org/xref/src/sys/dev/bluetooth/btsco.c?r=1.42#454
Regards,
Andrius V
>How-To-Repeat:
>Fix:
Home |
Main Index |
Thread Index |
Old Index