Date: Sun, 30 Jun 2013 02:19:24 +0100 From: "Steven Hartland" <steven@multiplay.co.uk> To: <stable@FreeBSD.org> Subject: locks under printf(9) and WITNESS = panic? Message-ID: <77F3F7FC35D843ADA82D54EF37249ED0@multiplay.co.uk>
next in thread | raw e-mail | index | archive | help
when booting stable/9 under a debug kernel with WITNESS enabled and verbose I get the following panic.. It seems very much like the discussion from a year back on current: http://lists.freebsd.org/pipermail/freebsd-current/2012-January/031375.html Any ideas? uhub1: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1 uhub0: 2 ports with 2 removable, self powered uhub1: 2 ports with 2 removable, self powered panic: mtx_lock_spin: recursed on non-recursive mutex cnputs_mtx @ /usr/src/sys/kern/kern_cons.c:500 cpuid = 0 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2a/frame 0xffffff9185023940 kdb_backtrace() at kdb_backtrace+0x37/frame 0xffffff9185023a00 panic() at panic+0x1d8/frame 0xffffff9185023b00 _mtx_lock_spin_flags() at _mtx_lock_spin_flags+0x123/frame 0xffffff9185023b40 cnputs() at cnputs+0x7a/frame 0xffffff9185023b60 putbuf() at putbuf+0xbf/frame 0xffffff9185023be0 kvprintf() at kvprintf+0x83/frame 0xffffff9185023d20 vprintf() at vprintf+0x85/frame 0xffffff9185024580 printf() at printf+0x67/frame 0xffffff9185024660 witness_checkorder() at witness_checkorder+0x794/frame 0xffffff9185024720 _mtx_lock_spin_flags() at _mtx_lock_spin_flags+0x94/frame 0xffffff9185024760 uart_cnputc() at uart_cnputc+0x3e/frame 0xffffff9185024780 cnputc() at cnputc+0x4c/frame 0xffffff91850247b0 cnputs() at cnputs+0x26/frame 0xffffff91850247d0 putbuf() at putbuf+0xbf/frame 0xffffff9185024850 kvprintf() at kvprintf+0x83/frame 0xffffff9185024990 vprintf() at vprintf+0x85/frame 0xffffff91850251f0 printf() at printf+0x67/frame 0xffffff91850252d0 witness_checkorder() at witness_checkorder+0x794/frame 0xffffff9185025390 _mtx_lock_spin_flags() at _mtx_lock_spin_flags+0x94/frame 0xffffff91850253d0 cpu_new_callout() at cpu_new_callout+0x4f/frame 0xffffff9185025400 callout_reset_on() at callout_reset_on+0xde/frame 0xffffff9185025450 sleepq_set_timeout() at sleepq_set_timeout+0x8b/frame 0xffffff9185025490 _sleep() at _sleep+0x3c1/frame 0xffffff9185025520 usb_pause_mtx() at usb_pause_mtx+0x40/frame 0xffffff9185025540 usbd_transfer_unsetup_sub() at usbd_transfer_unsetup_sub+0x134/frame 0xffffff9185025560 usbd_transfer_unsetup() at usbd_transfer_unsetup+0x19b/frame 0xffffff91850255a0 usbd_ctrl_transfer_setup() at usbd_ctrl_transfer_setup+0x89/frame 0xffffff91850255f0 usbd_do_request_flags() at usbd_do_request_flags+0x327/frame 0xffffff91850256a0 usbd_req_get_desc() at usbd_req_get_desc+0xe4/frame 0xffffff9185025730 usbd_req_get_config_desc() at usbd_req_get_config_desc+0x64/frame 0xffffff9185025780 usbd_req_get_config_desc_full() at usbd_req_get_config_desc_full+0x5a/frame 0xffffff9185025810 usbd_set_config_index() at usbd_set_config_index+0x77/frame 0xffffff91850258b0 usb_alloc_device() at usb_alloc_device+0x6e7/frame 0xffffff91850259d0 uhub_explore() at uhub_explore+0x59b/frame 0xffffff9185025a40 usb_bus_explore() at usb_bus_explore+0xd2/frame 0xffffff9185025a70 usb_process() at usb_process+0xc3/frame 0xffffff9185025aa0 fork_exit() at fork_exit+0x135/frame 0xffffff9185025af0 fork_trampoline() at fork_trampoline+0xe/frame 0xffffff9185025af0 --- trap 0, rip = 0, rsp = 0xffffff9185025bb0, rbp = 0 --- KDB: enter: panic [ thread pid 15 tid 100106 ] Stopped at kdb_enter+0x3b: movq $0,0x7cb632(%rip)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?77F3F7FC35D843ADA82D54EF37249ED0>