Removing USB keyboard after filesystems synced causes panic with destroyed mutex twa(4)?

Garrett Cooper yanefbsd at gmail.com
Sun Mar 7 10:24:18 UTC 2010


On Sun, Mar 7, 2010 at 2:07 AM, Garrett Cooper <yanefbsd at gmail.com> wrote:
> Hi Alexander and Hans,
>    I recently did the following which generated a panic on a
> 9-CURRENT kernel compiled on the 26th:
>
> 1. Executed reboot
> 2. Removed keyboard.
> 3. Some time after `All buffers synced\nUptime: ...' was displayed,
> the keyboard was registered disconnected.
> 4. The interrupt was delivered to my twa(4) enabled card and the
> kernel panicked, like so:
>
> ugen2.2: <Mitsumi Electric> at usbus2 (disconnected)
> uhub8: at uhub2, port 1, addr 2 (disconnected)
> ugen2.3: <Mitsumi Electric> at usbus2 (disconnected)
> ukbd0: at uhub8, port 3, addr 3 (disconnected)
> uhid0: at uhub8, port 3, addr 3 (disconnected)
> panic: mtx_lock_spin() of destroyed mutex @ /usr/src/sys/dev/twa/tw_cl_intr.c:88
>
> cpuid = 1
> KDB: enter: panic
> [thread pid 12 tid 100025 ]
> Stopped at         kdb_enter+0x3d: movq     $0,0x40289c(%rip)
> db>
>
>    I wish I could provide you with more details, but unfortunately I
> the USB bus isn't registering the fact that I'm reattaching the
> keyboard right now and the box won't reboot automatically :( (didn't
> set the right sysctl beforehand to panic automatically). I'll try and
> reproduce the issue again, but I was just wondering whether or not you
> guys had seen this problem before.

    Phew... it's reproducible with that kernel. Here's what I did
exactly (because my original directions were incorrect):
    1. Hit power button (for S5).
    2. Disconnect keyboard RIGHT as `Uptime: ...' is displayed.
    Kernel panicked on my system again. Now to figure out if it still
exists with a kernel compiled today, and also how to debug it if it
still does exist :/...
Thanks,
-Garrett


More information about the freebsd-current mailing list