Date: Thu, 2 Oct 2008 17:33:31 +0200 From: "Paul B. Mahol" <onemda@gmail.com> To: "Boris Samorodov" <bsam@ipt.ru> Cc: freebsd-current@freebsd.org Subject: Re: panic at ehci_abort_xfer Message-ID: <3a142e750810020833y47357729ic5e463a3779cd219@mail.gmail.com> In-Reply-To: <02679242@bb.ipt.ru> References: <84759477@bb.ipt.ru> <3a142e750810020737qa64e89yc29472b23c3a81d0@mail.gmail.com> <02679242@bb.ipt.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10/2/08, Boris Samorodov <bsam@ipt.ru> wrote:
> "Paul B. Mahol" <onemda@gmail.com> writes:
>> On 10/2/08, Boris Samorodov <bsam@ipt.ru> wrote:
>>> Hello All,
>>>
>>>
>>> I've got a panic at today's CURRENT/i386 after inserting an USB
>>> Linksys Wifi Adapter (the adapter had been scanning):
>>
>> Which driver?
>
> rum
>
>> This is first time it happened on same hardware, and it was working
>> without problems on older(how much) CURRENT?
>> Or, this is first time you have insterted that adapter in CURRENT?
>
> This is a new EeePC-1000 (Atom 1.6Ghz with hyperthreading enabled)
> and new system. Since no network cards (neither Eth nore Wifi) is
> currently supported I try to use an USB Linksys Adapter WUSB54GC.
>
>> Look in usb/124758 maybe it is same bug.
>
> Yes, very much alike.
ehci(4) is buggy. Use usb2_wlan.ko module from usb2. (Need to build
custom kernel without usb, and than load usb2_[core,controller,wlan])
usb2 should be committed soon to HEAD.
IMHO old usb code should be removed ASAP.
>>> -----
>>> 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
>>> _______________________________________________
>>> freebsd-current@freebsd.org mailing list
>>> http://lists.freebsd.org/mailman/listinfo/freebsd-current
>>> To unsubscribe, send any mail to
>>> "freebsd-current-unsubscribe@freebsd.org"
>>>
>
> WBR
> --
> bsam
> Boris Samorodov (bsam)
> Research Engineer, http://www.ipt.ru Telephone & Internet SP
> FreeBSD committer, http://www.FreeBSD.org The Power To Serve
>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3a142e750810020833y47357729ic5e463a3779cd219>
