NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/52569: Entering ddb using USB keyboard panics with "locking against myself"
>Number: 52569
>Category: kern
>Synopsis: Entering ddb using USB keyboard panics with "locking against myself"
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Sep 22 19:10:00 +0000 2017
>Originator: Andreas Gustafsson
>Release: NetBSD-current, source date 2017.09.06.18.21.17 + patch from PR 52553
>Organization:
>Environment:
System: NetBSD
Architecture: i386
Machine: i386
>Description:
After testing Nick's patch for PR 52553, I figured I'd try to
reproduce PR 52525 on the same machine by hitting control-alt-esc on
its USB keyboard. This resulted in a panic and crash dump. Examining
the crash dump shows:
test# gdb /netbsd
[...]
(gdb) target kvm netbsd.3.core
maybe_dump (howto=260) at /usr/src/sys/arch/i386/i386/machdep.c:757
757 splx(s);
(gdb) bt
#0 maybe_dump (howto=260) at /usr/src/sys/arch/i386/i386/machdep.c:757
#1 0xc011edb5 in cpu_reboot (howto=260, bootstr=0x0) at /usr/src/sys/arch/i386/i386/machdep.c:776
#2 0xc0bf7c54 in vpanic (fmt=0xc13ab588 "lock error: %s: %s,%zu: %s: lock %p cpu %d lwp %p", ap=0xd8a5b700 "?/:\301(1:\301 \002") at /usr/src/sys/kern/subr_prf.c:342
#3 0xc0bf7a86 in panic (fmt=0xc13ab588 "lock error: %s: %s,%zu: %s: lock %p cpu %d lwp %p") at /usr/src/sys/kern/subr_prf.c:258
#4 0xc0bf00c6 in lockdebug_abort (func=0xc13a3128 <__func__.6155> "mutex_vector_enter", line=544, lock=0xc25e626c, ops=0xc16ace78 <mutex_adaptive_lockops>,
msg=0xc13a3081 "locking against myself") at /usr/src/sys/kern/subr_lockdebug.c:877
#5 0xc0ba7dde in mutex_abort (func=0xc13a3128 <__func__.6155> "mutex_vector_enter", line=544, mtx=0xc25e626c, msg=0xc13a3081 "locking against myself") at /usr/src/sys/kern/kern_mutex.c:316
#6 0xc0ba82dc in mutex_vector_enter (mtx=0xc25e626c) at /usr/src/sys/kern/kern_mutex.c:544
#7 0xc06f2a90 in uhci_device_intr_start (xfer=0xc25fdd20) at /usr/src/sys/dev/usb/uhci.c:2752
#8 0xc0457e58 in usbd_start_next (pipe=0xc261f248) at /usr/src/sys/dev/usb/usbdi.c:1043
#9 0xc0457bac in usb_transfer_complete (xfer=0xc25fdd20) at /usr/src/sys/dev/usb/usbdi.c:986
#10 0xc06f0037 in uhci_softintr (v=0xc25e600c) at /usr/src/sys/dev/usb/uhci.c:1423
#11 0xc04580fc in usbd_set_polling (dev=0xc260b218, on=1) at /usr/src/sys/dev/usb/usbdi.c:1143
#12 0xc0473cc8 in ukbd_cnpollc (v=0xc256a000, on=1) at /usr/src/sys/dev/usb/ukbd.c:997
#13 0xc09f74aa in wskbd_cnpollc (dev=18446744073709551615, poll=1) at /usr/src/sys/dev/wscons/wskbd.c:1431
#14 0xc09ef67c in wsdisplay_pollc (dev=12032, on=1) at /usr/src/sys/dev/wscons/wsdisplay.c:2257
#15 0xc0123655 in cnpollc (on=1) at /usr/src/sys/dev/cons.c:359
#16 0xc011abfd in kdb_trap (type=1, code=0, regs=0xd8a5ba04) at /usr/src/sys/arch/i386/i386/db_interface.c:248
#17 0xc0122593 in trap (frame=0xd8a5ba04) at /usr/src/sys/arch/i386/i386/trap.c:313
#18 0xc0116e8f in alltraps ()
#19 0xd8a5ba04 in ?? ()
#20 0xc011ad4e in cpu_Debugger () at /usr/src/sys/arch/i386/i386/db_interface.c:289
#21 0xc09f7a62 in internal_command (sc=0xc261f748, type=0xd8a5babc, ksym=62496, ksym2=27) at /usr/src/sys/dev/wscons/wskbd.c:1591
#22 0xc09f7e32 in wskbd_translate (id=0xc17404c0 <wskbd_console_data>, type=2, value=41) at /usr/src/sys/dev/wscons/wskbd.c:1719
#23 0xc09f5fb5 in wskbd_input (dev=0xc25fe288, type=2, value=41) at /usr/src/sys/dev/wscons/wskbd.c:684
#24 0xc04738af in ukbd_decode (sc=0xc256a000, ud=0xc256ae28) at /usr/src/sys/dev/usb/ukbd.c:849
#25 0xc047337b in ukbd_delayed_decode (addr=0xc256a000) at /usr/src/sys/dev/usb/ukbd.c:714
#26 0xc0bd7b68 in callout_softclock (v=0x0) at /usr/src/sys/kern/kern_timeout.c:738
#27 0xc0bc6927 in softint_execute (si=0xd89ce074, l=0xc23a7540, s=2) at /usr/src/sys/kern/kern_softint.c:589
#28 0xc0bc6c93 in softint_dispatch (pinned=0xc23a7d20, s=2) at /usr/src/sys/kern/kern_softint.c:871
#29 0xc0100f3b in Xsoftintr ()
#30 0xc23a7d20 in ?? ()
For a dmesg, see PR 53553.
>How-To-Repeat:
Hit control-alt-esc on a USB keyboard attached to a uhci controller
when running an i386 debug build. You may also need to have some
other USB activity going on; running the test of PR 53553 seems to do
it.
>Fix:
>Unformatted:
Home |
Main Index |
Thread Index |
Old Index