Module Name:    src
Committed By:   jakllsch
Date:           Wed Nov 14 01:04:46 UTC 2012

Modified Files:
        src/sys/dev/pci: pciide_common.c

Log Message:
don't attempt to re-unmap the interrupt on detach


To generate a diff of this commit:
cvs rdiff -u -r1.57 -r1.58 src/sys/dev/pci/pciide_common.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/pci/pciide_common.c
diff -u src/sys/dev/pci/pciide_common.c:1.57 src/sys/dev/pci/pciide_common.c:1.58
--- src/sys/dev/pci/pciide_common.c:1.57	Tue Jul 31 15:50:36 2012
+++ src/sys/dev/pci/pciide_common.c	Wed Nov 14 01:04:45 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: pciide_common.c,v 1.57 2012/07/31 15:50:36 bouyer Exp $	*/
+/*	$NetBSD: pciide_common.c,v 1.58 2012/11/14 01:04:45 jakllsch Exp $	*/
 
 
 /*
@@ -70,7 +70,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pciide_common.c,v 1.57 2012/07/31 15:50:36 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pciide_common.c,v 1.58 2012/11/14 01:04:45 jakllsch Exp $");
 
 #include <sys/param.h>
 #include <sys/malloc.h>
@@ -249,12 +249,16 @@ pciide_detach(device_t self, int flags)
 	     channel++) {
 		cp = &sc->pciide_channels[channel];
 		if (cp->compat != 0)
-			if (cp->ih != NULL)
+			if (cp->ih != NULL) {
 			       pciide_unmap_compat_intr(sc->sc_pc, cp, channel);
+			       cp->ih = NULL;
+			}
 	}
 
-	if (sc->sc_pci_ih != NULL)
+	if (sc->sc_pci_ih != NULL) {
 		pci_intr_disestablish(sc->sc_pc, sc->sc_pci_ih);
+		sc->sc_pci_ih = NULL;
+	}
 
 	return pciide_common_detach(sc, flags);
 }

Reply via email to