Date: Sat, 07 Jul 2007 22:02:03 -0600 (MDT) From: "M. Warner Losh" <imp@bsdimp.com> To: xistence@0x58.com Cc: usb@freebsd.org, hackers@freebsd.org, current@freebsd.org Subject: Re: device rue causes kernel panic Message-ID: <20070707.220203.776519881.imp@bsdimp.com> In-Reply-To: <9496044C-3275-4D9C-8FFF-FD1FCE1F6728@0x58.com> References: <9496044C-3275-4D9C-8FFF-FD1FCE1F6728@0x58.com>
next in thread | previous in thread | raw e-mail | index | archive | help
In message: <9496044C-3275-4D9C-8FFF-FD1FCE1F6728@0x58.com>
Bert JW Regeer <xistence@0x58.com> writes:
: I have a USB 10/100 FastEthernet device, that is identified as a
: RealTek device. On 6.2-RELEASE it works without any issues, and some
: older versions of CURRENT it worked perfectly as well. I csup'ed to
: CURRENT today (2007-07-07 at 16:30 MST), rebuild my kernel and it
: failed:
: panic (fmt=0xc0a94933 "Trying sleep, but thread marked as sleeping prohibited")
: _sleep (ident=0xc2322c00...) at /usr/src/sys/kern/kern_synch.c:201
: usbd_transfer (xfer=0xc2322c00) at /usr/src/sys/dev/usb/usbdi.c:333
: usbd_sync_transfer (xfer=0xc2322c00) at /usr/src/sys/dev/usb/usbdi.c:406
: usbd_do_request_flags_pipe ... at /usr/src/sys/dev/usb/usbdi.c:1098
: usbd_do_request_flags ...at /usr/src/sys/dev/usb/usbdi.c:1068
: usbd_do_request at /usr/src/sys/dev/usb/usbdi.c:1060
: rue_read_mem at /usr/src/sys/dev/usb/if_rue.c:227
: rue_csr_read_1 at /usr/src/sys/dev/usb/if_rue.c:276
: rue_miibus_readreg at /usr/src/sys/dev/usb/if_rue.c:376
...
: ruephy_service at miibus_if.h:26 /* Likely wrong */
: mii_tick at /usr/src/sys/dev/mii/mii.c:390
: rue_tick at /usr/src/sys/dev/usb/if_rue.c:935
: softclock at /usr/src/sys/kern/kern_timeout.c:281
...
This driver needs to be re-written ala aue, axe, kue and udav to use a
taskqueue for the mii ticking. It appears to be the only usb driver
in the tree to still do stuff directly in a callout. This context
can't sleep...
Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070707.220203.776519881.imp>
