From 50aab5f20d5781930aa9dcf8fbcb9424872468bc Mon Sep 17 00:00:00 2001 From: Matthew Dillon Date: Wed, 13 Aug 2008 00:55:55 +0000 Subject: [PATCH] Don't bump intr_context when running from the softint. Hopefully this will allow aborts queued from the softint to proceed instead of panic. --- sys/bus/usb/uhci.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/sys/bus/usb/uhci.c b/sys/bus/usb/uhci.c index abe28ddc73..40d3928ba1 100644 --- a/sys/bus/usb/uhci.c +++ b/sys/bus/usb/uhci.c @@ -1,6 +1,6 @@ /* $NetBSD: uhci.c,v 1.170 2003/02/19 01:35:04 augustss Exp $ */ /* $FreeBSD: src/sys/dev/usb/uhci.c,v 1.162.2.1 2006/03/01 01:59:04 iedowse Exp $ */ -/* $DragonFly: src/sys/bus/usb/uhci.c,v 1.28 2008/06/12 07:09:31 hasso Exp $ */ +/* $DragonFly: src/sys/bus/usb/uhci.c,v 1.29 2008/08/13 00:55:55 dillon Exp $ */ /* Also already incorporated from NetBSD: * $NetBSD: uhci.c,v 1.172 2003/02/23 04:19:26 simonb Exp $ @@ -1192,7 +1192,11 @@ uhci_softintr(void *v) DPRINTFN(10,("%s: uhci_softintr (%d)\n", device_get_nameunit(sc->sc_bus.bdev), sc->sc_bus.intr_context)); - sc->sc_bus.intr_context++; + /* + * this is a software interrupt, not a real interrupt, + * do not bump intr_context + */ + /* sc->sc_bus.intr_context++; */ /* * Interrupts on UHCI really suck. When the host controller @@ -1215,7 +1219,7 @@ uhci_softintr(void *v) } #endif /* USB_USE_SOFTINTR */ - sc->sc_bus.intr_context--; + /* sc->sc_bus.intr_context--; */ } /* Check for an interrupt. */ -- 2.41.0