Source-Changes-HG archive

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

[src/trunk]: src/sys/dev/usb usbnet drivers: No need for usbnet_busy in uno_i...



details:   https://anonhg.NetBSD.org/src/rev/42ecd03fb67f
branches:  trunk
changeset: 362517:42ecd03fb67f
user:      riastradh <riastradh%NetBSD.org@localhost>
date:      Thu Mar 03 05:51:17 2022 +0000

description:
usbnet drivers: No need for usbnet_busy in uno_init.

This callback always runs with the IFNET_LOCK held, and the interface
cannot be detached until the IFNET_LOCK is released, so there is no
need to hang onto a reference count here.  (None of the usbnet
drivers touch the IFNET_LOCK except to verify it is held sometimes.)

diffstat:

 sys/dev/usb/if_aue.c  |  7 ++-----
 sys/dev/usb/if_axe.c  |  8 ++------
 sys/dev/usb/if_axen.c |  8 ++------
 sys/dev/usb/if_cue.c  |  7 ++-----
 sys/dev/usb/if_kue.c  |  7 ++-----
 sys/dev/usb/if_mos.c  |  8 ++------
 sys/dev/usb/if_mue.c  |  7 ++-----
 sys/dev/usb/if_smsc.c |  8 ++------
 sys/dev/usb/if_udav.c |  9 ++-------
 sys/dev/usb/if_ure.c  |  8 ++------
 sys/dev/usb/if_url.c  |  8 ++------
 11 files changed, 22 insertions(+), 63 deletions(-)

diffs (truncated from 348 to 300 lines):

diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_aue.c
--- a/sys/dev/usb/if_aue.c      Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_aue.c      Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_aue.c,v 1.174 2022/03/03 05:51:06 riastradh Exp $   */
+/*     $NetBSD: if_aue.c,v 1.175 2022/03/03 05:51:17 riastradh Exp $   */
 
 /*
  * Copyright (c) 1997, 1998, 1999, 2000
@@ -76,7 +76,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_aue.c,v 1.174 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_aue.c,v 1.175 2022/03/03 05:51:17 riastradh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -1003,12 +1003,9 @@
 static int
 aue_uno_init(struct ifnet *ifp)
 {
-       struct usbnet * const   un = ifp->if_softc;
        int rv;
 
-       usbnet_busy(un);
        rv = aue_init_locked(ifp);
-       usbnet_unbusy(un);
 
        return rv;
 }
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_axe.c
--- a/sys/dev/usb/if_axe.c      Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_axe.c      Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_axe.c,v 1.134 2022/03/03 05:51:06 riastradh Exp $   */
+/*     $NetBSD: if_axe.c,v 1.135 2022/03/03 05:51:17 riastradh Exp $   */
 /*     $OpenBSD: if_axe.c,v 1.137 2016/04/13 11:03:37 mpi Exp $ */
 
 /*
@@ -87,7 +87,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.134 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_axe.c,v 1.135 2022/03/03 05:51:17 riastradh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -1315,11 +1315,7 @@
 static int
 axe_uno_init(struct ifnet *ifp)
 {
-       struct usbnet * const un = ifp->if_softc;
-
-       usbnet_busy(un);
        int ret = axe_init_locked(ifp);
-       usbnet_unbusy(un);
 
        return ret;
 }
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_axen.c
--- a/sys/dev/usb/if_axen.c     Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_axen.c     Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_axen.c,v 1.76 2022/03/03 05:51:06 riastradh Exp $   */
+/*     $NetBSD: if_axen.c,v 1.77 2022/03/03 05:51:17 riastradh Exp $   */
 /*     $OpenBSD: if_axen.c,v 1.3 2013/10/21 10:10:22 yuo Exp $ */
 
 /*
@@ -23,7 +23,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_axen.c,v 1.76 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_axen.c,v 1.77 2022/03/03 05:51:17 riastradh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -945,11 +945,7 @@
 static int
 axen_uno_init(struct ifnet *ifp)
 {
-       struct usbnet * const un = ifp->if_softc;
-
-       usbnet_busy(un);
        int ret = axen_init_locked(ifp);
-       usbnet_unbusy(un);
 
        return ret;
 }
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_cue.c
--- a/sys/dev/usb/if_cue.c      Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_cue.c      Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_cue.c,v 1.94 2022/03/03 05:51:06 riastradh Exp $    */
+/*     $NetBSD: if_cue.c,v 1.95 2022/03/03 05:51:17 riastradh Exp $    */
 
 /*
  * Copyright (c) 1997, 1998, 1999, 2000
@@ -57,7 +57,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_cue.c,v 1.94 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_cue.c,v 1.95 2022/03/03 05:51:17 riastradh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -670,12 +670,9 @@
 static int
 cue_uno_init(struct ifnet *ifp)
 {
-       struct usbnet * const   un = ifp->if_softc;
        int rv;
 
-       usbnet_busy(un);
        rv = cue_init_locked(ifp);
-       usbnet_unbusy(un);
 
        return rv;
 }
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_kue.c
--- a/sys/dev/usb/if_kue.c      Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_kue.c      Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_kue.c,v 1.107 2022/03/03 05:51:06 riastradh Exp $   */
+/*     $NetBSD: if_kue.c,v 1.108 2022/03/03 05:51:17 riastradh Exp $   */
 
 /*
  * Copyright (c) 1997, 1998, 1999, 2000
@@ -71,7 +71,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_kue.c,v 1.107 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_kue.c,v 1.108 2022/03/03 05:51:17 riastradh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -630,12 +630,9 @@
 static int
 kue_uno_init(struct ifnet *ifp)
 {
-       struct usbnet * const   un = ifp->if_softc;
        int rv;
 
-       usbnet_busy(un);
        rv = kue_init_locked(ifp);
-       usbnet_unbusy(un);
 
        return rv;
 }
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_mos.c
--- a/sys/dev/usb/if_mos.c      Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_mos.c      Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_mos.c,v 1.10 2022/03/03 05:51:06 riastradh Exp $    */
+/*     $NetBSD: if_mos.c,v 1.11 2022/03/03 05:51:17 riastradh Exp $    */
 /*     $OpenBSD: if_mos.c,v 1.40 2019/07/07 06:40:10 kevlo Exp $       */
 
 /*
@@ -72,7 +72,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_mos.c,v 1.10 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_mos.c,v 1.11 2022/03/03 05:51:17 riastradh Exp $");
 
 #include <sys/param.h>
 
@@ -762,11 +762,7 @@
 static int
 mos_uno_init(struct ifnet *ifp)
 {
-       struct usbnet * const un = ifp->if_softc;
-
-       usbnet_busy(un);
        int ret = mos_init_locked(ifp);
-       usbnet_unbusy(un);
 
        return ret;
 }
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_mue.c
--- a/sys/dev/usb/if_mue.c      Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_mue.c      Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_mue.c,v 1.66 2022/03/03 05:51:06 riastradh Exp $    */
+/*     $NetBSD: if_mue.c,v 1.67 2022/03/03 05:51:17 riastradh Exp $    */
 /*     $OpenBSD: if_mue.c,v 1.3 2018/08/04 16:42:46 jsg Exp $  */
 
 /*
@@ -20,7 +20,7 @@
 /* Driver for Microchip LAN7500/LAN7800 chipsets. */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_mue.c,v 1.66 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_mue.c,v 1.67 2022/03/03 05:51:17 riastradh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -1256,12 +1256,9 @@
 static int
 mue_uno_init(struct ifnet *ifp)
 {
-       struct usbnet * const   un = ifp->if_softc;
        int rv;
 
-       usbnet_busy(un);
        rv = mue_init_locked(ifp);
-       usbnet_unbusy(un);
 
        return rv;
 }
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_smsc.c
--- a/sys/dev/usb/if_smsc.c     Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_smsc.c     Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_smsc.c,v 1.74 2022/03/03 05:51:06 riastradh Exp $   */
+/*     $NetBSD: if_smsc.c,v 1.75 2022/03/03 05:51:17 riastradh Exp $   */
 
 /*     $OpenBSD: if_smsc.c,v 1.4 2012/09/27 12:38:11 jsg Exp $ */
 /*     $FreeBSD: src/sys/dev/usb/net/if_smsc.c,v 1.1 2012/08/15 04:03:55 gonzo Exp $ */
@@ -61,7 +61,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_smsc.c,v 1.74 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_smsc.c,v 1.75 2022/03/03 05:51:17 riastradh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -554,11 +554,7 @@
 static int
 smsc_uno_init(struct ifnet *ifp)
 {
-       struct usbnet * const un = ifp->if_softc;
-
-       usbnet_busy(un);
        int ret = smsc_init_locked(ifp);
-       usbnet_unbusy(un);
 
        return ret;
 }
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_udav.c
--- a/sys/dev/usb/if_udav.c     Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_udav.c     Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_udav.c,v 1.81 2022/03/03 05:51:06 riastradh Exp $   */
+/*     $NetBSD: if_udav.c,v 1.82 2022/03/03 05:51:17 riastradh Exp $   */
 /*     $nabe: if_udav.c,v 1.3 2003/08/21 16:57:19 nabe Exp $   */
 
 /*
@@ -45,7 +45,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_udav.c,v 1.81 2022/03/03 05:51:06 riastradh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_udav.c,v 1.82 2022/03/03 05:51:17 riastradh Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_usb.h"
@@ -486,8 +486,6 @@
        if (ifp->if_flags & IFF_RUNNING)
                usbnet_stop(un, ifp, 1);
 
-       usbnet_busy(un);
-
        memcpy(eaddr, CLLADDR(ifp->if_sadl), sizeof(eaddr));
        udav_csr_write(un, UDAV_PAR, eaddr, ETHER_ADDR_LEN);
 
@@ -518,7 +516,6 @@
                rc = 0;
 
        if (rc != 0) {
-               usbnet_unbusy(un);
                return rc;
        }
 
@@ -527,8 +524,6 @@
        else
                rc = usbnet_init_rx_tx(un);
 
-       usbnet_unbusy(un);
-
        return rc;
 }
 
diff -r 2ff71b56b8d2 -r 42ecd03fb67f sys/dev/usb/if_ure.c
--- a/sys/dev/usb/if_ure.c      Thu Mar 03 05:51:06 2022 +0000
+++ b/sys/dev/usb/if_ure.c      Thu Mar 03 05:51:17 2022 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_ure.c,v 1.43 2022/03/03 05:51:06 riastradh Exp $    */
+/*     $NetBSD: if_ure.c,v 1.44 2022/03/03 05:51:17 riastradh Exp $    */
 /*     $OpenBSD: if_ure.c,v 1.10 2018/11/02 21:32:30 jcs Exp $ */
 
 /*-
@@ -30,7 +30,7 @@
 /* RealTek RTL8152/RTL8153 10/100/Gigabit USB Ethernet device */
 



Home | Main Index | Thread Index | Old Index