Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/pci call pci_intr_release() when pci_intr_establish_...



details:   https://anonhg.NetBSD.org/src/rev/10ad34cdd131
branches:  trunk
changeset: 446544:10ad34cdd131
user:      jdolecek <jdolecek%NetBSD.org@localhost>
date:      Mon Dec 10 06:23:54 2018 +0000

description:
call pci_intr_release() when pci_intr_establish_xname() fails; I got confused
by the opposite conditionals compared to other drivers

found by Masanobu SAITOH

diffstat:

 sys/dev/pci/ichsmb.c |  8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diffs (32 lines):

diff -r 5800002b5545 -r 10ad34cdd131 sys/dev/pci/ichsmb.c
--- a/sys/dev/pci/ichsmb.c      Mon Dec 10 03:58:30 2018 +0000
+++ b/sys/dev/pci/ichsmb.c      Mon Dec 10 06:23:54 2018 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ichsmb.c,v 1.59 2018/12/09 19:21:17 jdolecek Exp $     */
+/*     $NetBSD: ichsmb.c,v 1.60 2018/12/10 06:23:54 jdolecek Exp $     */
 /*     $OpenBSD: ichiic.c,v 1.18 2007/05/03 09:36:26 dlg Exp $ */
 
 /*
@@ -22,7 +22,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ichsmb.c,v 1.59 2018/12/09 19:21:17 jdolecek Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ichsmb.c,v 1.60 2018/12/10 06:23:54 jdolecek Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -194,10 +194,12 @@
                            sc->sc_pihp[0], IPL_BIO, ichsmb_intr, sc,
                            device_xname(sc->sc_dev));
                        if (sc->sc_ih != NULL) {
-                               pci_intr_release(pa->pa_pc, sc->sc_pihp, 1);
                                aprint_normal_dev(self, "interrupting at %s\n",
                                    intrstr);
                                sc->sc_poll = 0;
+                       } else {
+                               pci_intr_release(pa->pa_pc, sc->sc_pihp, 1);
+                               sc->sc_pihp = NULL;
                        }
                }
                if (sc->sc_poll)



Home | Main Index | Thread Index | Old Index