Date: Tue, 18 Feb 2003 11:35:32 +0100 (CET) From: volf@deze.org (Frank Volf) To: "Louis A. Mamakos" <louie@TransSys.COM> Cc: freebsd-stable@FreeBSD.ORG Subject: Re: UHCI/USB related panic while Message-ID: <20030218103533.0CA7F3E0A@mail.voor.deze.org> In-Reply-To: <200302170242.h1H2gfTw004044@whizzo.transsys.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Hmmm... that is interesting, I was about to report the exact same problem. In my case, a HP scanner is causing the problem. If usb drivers are built into the kernel, or loaded at boot time in loader.conf, then I have exactly the same problem: * a long delay while initialing the "usb hub"-driver * a page fault on virtual address 0x4 in uhci_idone. If, however I boot the system, and then kldload the usb modules, no problem whatsoever. Unfortunately, I have just as much clue as you on the solution... I'm just writing this to let everybody know that yours isn't an isolatated case. Frank Louis A. Mamakos wrote: > > I just upgraded a machine to this morning's version of the RELENG_4 > branch of FreeBSD. I had problems booting it, where it would hang for > a bit, and then panic while probing for USB peripherals. > > There was a USB hub plugged into the UHCI 2-port built-in "hub", and a USB > mouse plugged into the external hub. Attempting to boot with just the > external hub or just the external USB mouse seemed to break the same > way. As this machine has a somewhat critical role, I couldn't spend > a lot of time experimenting. I did jot down some of the information, > and it seems like uhci_idone() is invoked with a null pointer; the > fault virtual address is 0x4, which happens to be the offset of > ii->xfer in the structure.. > > What's interesting is that after the system is booted, I can plug > in the USB mouse, and things work just fine. > > Does this ring a bell for anyone? > > (kgdb) x/i 0xc02afecc > 0xc02afecc <uhci_idone+12>: mov 0x4(%eax),%ebx > (kgdb) list *0xc02afecc > 0xc02afecc is in uhci_idone (/usr/src/sys/dev/usb/uhci.c:1065). > 1060 > 1061 /* Called at splusb() */ > 1062 void > 1063 uhci_idone(uhci_intr_info_t *ii) > 1064 { > 1065 usbd_xfer_handle xfer = ii->xfer; > 1066 struct uhci_pipe *upipe = (struct uhci_pipe *)xfer->pipe; > 1067 uhci_soft_td_t *std; > 1068 u_int32_t status = 0, nstatus; > 1069 int actlen; > (kgdb) > > > When the system boots, I see this much on the console: > > uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0xdce0-0xdcff irq 2 at device 7.2 on pci0 > usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0 > usb0: USB revision 1.0 > uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 > uhub0: 2 ports with 2 removable, self powered > > and then there's this ominious hang followed by the panic. > > louie > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-stable" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030218103533.0CA7F3E0A>