panic at ehci_abort_xfer

From: Boris Samorodov <bsam_at_ipt.ru>
Date: Thu, 02 Oct 2008 17:57:30 +0400
Hello All,


I've got a panic at today's CURRENT/i386 after inserting an USB
Linksys Wifi Adapter (the adapter had been scanning):
-----
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 "i386-marcel-freebsd"...

Unread portion of the kernel message buffer:

Fatal trap 12: page fault while in kernel mode
cpuid = 1; apic id = 01
fault virtual address	= 0x38
fault code		= supervisor read, page not present
instruction pointer	= 0x20:0xc072fb57
stack pointer	        = 0x28:0xc3ed6c94
frame pointer	        = 0x28:0xc3ed6ccc
code segment		= base 0x0, limit 0xfffff, type 0x1b
			= DPL 0, pres 1, def32 1, gran 1
processor eflags	= interrupt enabled, resume, IOPL = 0
current process		= 15 (usbtask-hc)
trap number		= 12
panic: page fault
cpuid = 1
Uptime: 8m11s
Physical memory: 1003 MB
Dumping 54 MB: 39 23 7
[...]
#0  doadump () at pcpu.h:221
	in pcpu.h
(kgdb) list *0xc072fb57
0xc072fb57 is in ehci_abort_xfer (/usr/src/sys/dev/usb/ehci.c:2959).
2954			 * (if there is one). We only need to do this if
2955			 * it was previously pointing to us.
2956			 */
2957			for (sqtd = exfer->sqtdstart; ; sqtd = sqtd->nextqtd) {
2958				if (cur == sqtd->physaddr) {
2959					hit++;
2960				}
2961				if (sqtd == exfer->sqtdend)
2962					break;
2963			}
(kgdb) backtrace
#0  doadump () at pcpu.h:221
#1  0xc07fdfbc in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:420
#2  0xc07fe2c2 in panic (fmt=) at /usr/src/sys/kern/kern_shutdown.c:576
#3  0xc0b27983 in trap_fatal (frame=0xc3ed6c54, eva=56)
    at /usr/src/sys/i386/i386/trap.c:943
#4  0xc0b27c00 in trap_pfault (frame=0xc3ed6c54, usermode=0, eva=56)
    at /usr/src/sys/i386/i386/trap.c:856
#5  0xc0b2860a in trap (frame=0xc3ed6c54) at /usr/src/sys/i386/i386/trap.c:536
#6  0xc0b0c59b in calltrap () at /usr/src/sys/i386/i386/exception.s:165
#7  0xc072fb57 in ehci_abort_xfer (xfer=) at /usr/src/sys/dev/usb/ehci.c:2959
#8  0xc0731360 in ehci_timeout_task (addr=0xc482ee00)
    at /usr/src/sys/dev/usb/ehci.c:3112
#9  0xc07644b1 in usb_task_thread (arg=0xc0d05dc0)
    at /usr/src/sys/dev/usb/usb.c:485
#10 0xc07dc633 in fork_exit (callout=0xc0764400 <usb_task_thread>, 
    arg=0xc0d05dc0, frame=0xc3ed6d38) at /usr/src/sys/kern/kern_fork.c:810
#11 0xc0b0c610 in fork_trampoline () at /usr/src/sys/i386/i386/exception.s:270
(kgdb) quit
-----


WBR
-- 
Boris Samorodov (bsam)
Research Engineer, http://www.ipt.ru Telephone & Internet SP
FreeBSD committer, http://www.FreeBSD.org The Power To Serve
Received on Thu Oct 02 2008 - 11:57:39 UTC

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