Module Name:    src
Committed By:   christos
Date:           Sat Sep 12 19:21:50 UTC 2015

Modified Files:
        src/sys/dev/qbus: if_il.c

Log Message:
add missing splx() found by brainy


To generate a diff of this commit:
cvs rdiff -u -r1.27 -r1.28 src/sys/dev/qbus/if_il.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/qbus/if_il.c
diff -u src/sys/dev/qbus/if_il.c:1.27 src/sys/dev/qbus/if_il.c:1.28
--- src/sys/dev/qbus/if_il.c:1.27	Thu May 29 03:08:10 2014
+++ src/sys/dev/qbus/if_il.c	Sat Sep 12 15:21:50 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_il.c,v 1.27 2014/05/29 07:08:10 wiz Exp $	*/
+/*	$NetBSD: if_il.c,v 1.28 2015/09/12 19:21:50 christos Exp $	*/
 /*
  * Copyright (c) 1982, 1986 Regents of the University of California.
  * All rights reserved.
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_il.c,v 1.27 2014/05/29 07:08:10 wiz Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_il.c,v 1.28 2015/09/12 19:21:50 christos Exp $");
 
 #include "opt_inet.h"
 
@@ -291,8 +291,7 @@ ilinit(struct ifnet *ifp)
 	IL_WCSR(IL_CSR, ILC_RESET);
 	if (ilwait(sc, "hardware diag")) {
 		sc->sc_if.if_flags &= ~IFF_UP;
-		splx(s);
-		return 0;
+		goto out;
 	}
 	IL_WCSR(IL_CSR, ILC_CISA);
 	while ((IL_RCSR(IL_CSR) & IL_CDONE) == 0)
@@ -310,28 +309,28 @@ ilinit(struct ifnet *ifp)
 		IL_WCSR(IL_BCR, ETHER_ADDR_LEN);
 		IL_WCSR(IL_CSR, ((sc->sc_ui.ui_baddr >> 2) & IL_EUA)|ILC_LDPA);
 		if (ilwait(sc, "setaddr"))
-			return 0;
+			goto out;
 		IL_WCSR(IL_BAR, LOWORD(sc->sc_ui.ui_baddr));
 		IL_WCSR(IL_BCR, sizeof (struct il_stats));
 		IL_WCSR(IL_CSR, ((sc->sc_ui.ui_baddr >> 2) & IL_EUA)|ILC_STAT);
 		if (ilwait(sc, "verifying setaddr"))
-			return 0;
+			goto out;
 		if (memcmp(sc->sc_stats.ils_addr,
 		    CLLADDR(ifp->if_sadl), ETHER_ADDR_LEN) != 0) {
 			aprint_error_dev(sc->sc_dev, "setaddr didn't work\n");
-			return 0;
+			goto out;
 		}
 	}
 #ifdef MULTICAST
 	if (is->is_if.if_flags & IFF_PROMISC) {
 		addr->il_csr = ILC_PRMSC;
 		if (ilwait(ui, "all multi"))
-			return 0;
+			goto out;
 	} else if (is->is_if.if_flags & IFF_ALLMULTI) {
 	too_many_multis:
 		addr->il_csr = ILC_ALLMC;
 		if (ilwait(ui, "all multi"))
-			return 0;
+			goto out;
 	} else {
 		int i;
 		register struct ether_addr *ep = is->is_maddrs;
@@ -360,7 +359,7 @@ ilinit(struct ifnet *ifp)
 			addr->il_csr = ((is->is_ubaddr >> 2) & IL_EUA)|
 						LC_LDGRPS;
 			if (ilwait(ui, "load multi"))
-				return;
+				goto out;
 		} else {
 		    is->is_if.if_flags |= IFF_ALLMULTI;
 		    goto too_many_multis;
@@ -388,6 +387,7 @@ ilinit(struct ifnet *ifp)
 	sc->sc_flags |= ILF_RUNNING;
 	sc->sc_lastcmd = 0;
 	ilcint(sc);
+out:
 	splx(s);
 	return 0;
 }

Reply via email to