NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/48213: ehci assertion failure during boot
On 09/15/13 11:50, Andreas Gustafsson wrote:
This port is broken, it does not call cnpollc() before calling cngetc().
This should be fixed, but it will work anyway (for now).
This part should be easy to fix, but first...
panic: kernel diagnostic assertion "mutex_owned(&sc->sx_lock)" failed: file
"/tmp/bracket/build/2013.09.12.07.26.13-amd64/sys/dev/usb/ehci.c", line 3302
The KASSERT misses the polling case which you've clearly entered.
Nick
Index: sys/dev/usb/ehci.c
===================================================================
RCS file: /cvsroot/src/sys/dev/usb/ehci.c,v
retrieving revision 1.219
diff -u -p -u -r1.219 ehci.c
--- sys/dev/usb/ehci.c 26 Nov 2013 05:54:43 -0000 1.219
+++ sys/dev/usb/ehci.c 30 Nov 2013 13:11:50 -0000
@@ -3296,7 +3296,7 @@ ehci_device_ctrl_done(usbd_xfer_handle x
DPRINTFN(10,("ehci_ctrl_done: xfer=%p\n", xfer));
- KASSERT(mutex_owned(&sc->sc_lock));
+ KASSERT(sc->sc_bus.use_polling || mutex_owned(&sc->sc_lock));
#ifdef DIAGNOSTIC
if (!(xfer->rqflags & URQ_REQUEST)) {
Home |
Main Index |
Thread Index |
Old Index