Re: ural(4) hits usb/124758 (Was: Panic while using ural(4) with wpa_supplicant)

From: Kip Macy <kmacy_at_freebsd.org>
Date: Mon, 15 Dec 2008 05:17:52 +0000
I reliably hit panics with ural(4) as well - they appear to be locking related.

Cheers,
Kip

On Mon, Dec 15, 2008 at 5:12 AM, Damian Gerow <dgerow_at_afflictions.org> wrote:
> I've been able to reliably trigger the panic with ural(4), but I'm pretty
> sure it has nothing to do with wpa_supplicant(8).  A quick search of the PR
> database turns up usb/124758.
>
> Panic (PID 12 is "irq19: ehci1"):
>
> -----
> ural0: could not transmit buffer: SHORT_XFER
> panic: ehci_free_sqtd_chain: chain not found
> cpuid = 0
> KDB: enter: panic
> [thread pid 12 tid 100042]
> db>
> -----
>
> kgdb output; backtrace claims a corrupted stack:
>
> -----
> # uname -a
> FreeBSD plebeian.afflictions.org 8.0-CURRENT FreeBSD 8.0-CURRENT #3: Fri Dec 12 17:38:49 EST 2008     dgerow_at_plebeian.afflictions.org:/usr/obj/repo/freebsd/8-CURRENT/src/sys/GENERIC  amd64
> # cd /usr/obj/repo/freebsd/8-CURRENT/src/sys/GENERIC
> # kgdb kernel.debug /var/crash/vmcore.2
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "amd64-marcel-freebsd"...
>
> Unread portion of the kernel message buffer:
> panic: ehci_free_sqtd_chain: chain not found
> cpuid = 0
> KDB: enter: panic
> panic: from debugger
> cpuid = 0
> Uptime: 24m59s
> Physical memory: 3976 MB
> Dumping 804 MB: 789 773 757 741 725 709 693 677 661 645 629 613 597 581 565 549 533 517 501 485 469 453 437 421 405 389 373 357 341 325 309 293 277 261 245 229 213 197 181 165 149 133 117 101 85 69 53 37 21 5
>
> Reading symbols from /boot/kernel/geom_eli.ko...Reading symbols from /boot/kernel/geom_eli.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/geom_eli.ko
> Reading symbols from /boot/kernel/crypto.ko...Reading symbols from /boot/kernel/crypto.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/crypto.ko
> Reading symbols from /boot/kernel/zlib.ko...Reading symbols from /boot/kernel/zlib.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/zlib.ko
> Reading symbols from /boot/kernel/zfs.ko...Reading symbols from /boot/kernel/zfs.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/zfs.ko
> Reading symbols from /boot/kernel/opensolaris.ko...Reading symbols from /boot/kernel/opensolaris.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/opensolaris.ko
> Reading symbols from /boot/kernel/i915.ko...Reading symbols from /boot/kernel/i915.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/i915.ko
> Reading symbols from /boot/kernel/drm.ko...Reading symbols from /boot/kernel/drm.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/drm.ko
> #0  doadump () at pcpu.h:196
> 196             __asm __volatile("movq %%gs:0,%0" : "=r" (td));
> (kgdb) backtrace
> #0  doadump () at pcpu.h:196
> #1  0xffffffff804fc8c0 in boot (howto=260) at /repo/freebsd/8-CURRENT/src/sys/kern/kern_shutdown.c:420
> #2  0xffffffff804fcc26 in panic (fmt=Variable "fmt" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/kern/kern_shutdown.c:576
> #3  0xffffffff801c398a in db_panic (addr=Variable "addr" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/ddb/db_command.c:478
> #4  0xffffffff801c3f33 in db_command (last_cmdp=0xffffffff80b012a0, cmd_table=Variable "cmd_table" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/ddb/db_command.c:445
> #5  0xffffffff801c407d in db_command_loop () at /repo/freebsd/8-CURRENT/src/sys/ddb/db_command.c:498
> #6  0xffffffff801c5ec6 in db_trap (type=Variable "type" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/ddb/db_main.c:229
> #7  0xffffffff8052a0f3 in kdb_trap (type=3, code=0, tf=0xfffffffeb3e628c0) at /repo/freebsd/8-CURRENT/src/sys/kern/subr_kdb.c:534
> #8  0xffffffff807a993a in trap (frame=0xfffffffeb3e628c0) at /repo/freebsd/8-CURRENT/src/sys/amd64/amd64/trap.c:533
> #9  0xffffffff8078c5be in calltrap () at /repo/freebsd/8-CURRENT/src/sys/amd64/amd64/exception.S:217
> #10 0xffffffff8052a280 in kdb_enter (why=0xffffffff80888182 "panic", msg=0xa <Address 0xa out of bounds>) at cpufunc.h:63
> #11 0xffffffff804fcc03 in panic (fmt=Variable "fmt" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/kern/kern_shutdown.c:559
> #12 0xffffffff80437913 in ehci_free_sqtd_chain (sc=0xffffff000355a000, sqh=0xffffffff81020fe0, sqtd=0xa, sqtdend=0xfffffffeb6940f80)
>    at /repo/freebsd/8-CURRENT/src/sys/dev/usb/ehci.c:2737
> #13 0xffffffff804379e9 in ehci_device_bulk_done (xfer=0xffffffff81020fe0) at /repo/freebsd/8-CURRENT/src/sys/dev/usb/ehci.c:3543
> #14 0xffffffff80469b45 in usb_transfer_complete (xfer=0xffffff0003a8e400) at /repo/freebsd/8-CURRENT/src/sys/dev/usb/usbdi.c:982
> #15 0xffffffff8043709e in ehci_idone (ex=Variable "ex" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/dev/usb/ehci.c:1034
> #16 0xffffffff804377f0 in ehci_softintr (v=0xffffffff81020fe0) at /repo/freebsd/8-CURRENT/src/sys/dev/usb/ehci.c:802
> #17 0xffffffff80465645 in usb_schedsoftintr (bus=Variable "bus" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/dev/usb/usb.c:848
> #18 0xffffffff8043937d in ehci_intr1 (sc=0xffffff000355a000) at /repo/freebsd/8-CURRENT/src/sys/dev/usb/ehci.c:631
> #19 0xffffffff80439e92 in ehci_intr (v=Variable "v" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/dev/usb/ehci.c:590
> #20 0xffffffff804de0ca in intr_event_execute_handlers (p=Variable "p" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/kern/kern_intr.c:1134
> #21 0xffffffff804dec8d in ithread_loop (arg=Variable "arg" is not available.
> ) at /repo/freebsd/8-CURRENT/src/sys/kern/kern_intr.c:1147
> #22 0xffffffff804dc0e6 in fork_exit (callout=0xffffffff804debcf <ithread_loop>, arg=0xffffff000360ea60, frame=0xfffffffeb3e62c90)
>    at /repo/freebsd/8-CURRENT/src/sys/kern/kern_fork.c:821
> #23 0xffffffff8078c9ce in fork_trampoline () at /repo/freebsd/8-CURRENT/src/sys/amd64/amd64/exception.S:521
> #24 0x0000000000000000 in ?? ()
> #25 0x0000000000000000 in ?? ()
> #26 0x0000000000000001 in ?? ()
> #27 0x0000000000000000 in ?? ()
> #28 0x0000000000000000 in ?? ()
> #29 0x0000000000000000 in ?? ()
> #30 0x0000000000000000 in ?? ()
> #31 0x0000000000000000 in ?? ()
> #32 0x0000000000000000 in ?? ()
> #33 0x0000000000000000 in ?? ()
> #34 0x0000000000000000 in ?? ()
> #35 0x0000000000000000 in ?? ()
> #36 0x0000000000000000 in ?? ()
> #37 0x0000000000000000 in ?? ()
> #38 0x0000000000000000 in ?? ()
> #39 0x0000000000000000 in ?? ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000000000 in ?? ()
> #42 0x0000000000000000 in ?? ()
> #43 0x0000000000000000 in ?? ()
> #44 0x0000000000000000 in ?? ()
> #45 0x0000000000000000 in ?? ()
> #46 0x0000000000000000 in ?? ()
> #47 0x0000000000000000 in ?? ()
> #48 0x0000000000ee3000 in ?? ()
> #49 0x0000000000000000 in ?? ()
> #50 0xffffffff80b3e040 in affinity ()
> #51 0xffffffff80b3e040 in affinity ()
> #52 0xffffff00014d3390 in ?? ()
> #53 0xfffffffeb3e62b90 in ?? ()
> #54 0xfffffffeb3e62b48 in ?? ()
> #55 0xffffff00035b4720 in ?? ()
> ---Type <return> to continue, or q <return> to quit---
> #56 0xffffffff8051e396 in sched_switch (td=0xffffff000360ea60, newtd=0xffffffff804debcf, flags=Cannot access memory at address 0xffffffffffffffc0
> ) at /repo/freebsd/8-CURRENT/src/sys/kern/sched_ule.c:1848
> Previous frame inner to this frame (corrupt stack?)
> (kgdb) list
> 191     static __inline struct thread *
> 192     __curthread(void)
> 193     {
> 194             struct thread *td;
> 195
> 196             __asm __volatile("movq %%gs:0,%0" : "=r" (td));
> 197             return (td);
> 198     }
> 199     #define curthread               (__curthread())
> 200
> (kgdb) quit
> #
> -----
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
>



-- 
If we desire respect for the law, we must first make the law respectable.
- Louis D. Brandeis
Received on Mon Dec 15 2008 - 04:17:52 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:38 UTC