Module Name:    src
Committed By:   ozaki-r
Date:           Fri May 25 04:40:27 UTC 2018

Modified Files:
        src/sys/dev/pci: if_wm.c
        src/sys/dev/pci/ixgbe: ixgbe.c ixv.c
        src/sys/net: if_bridge.c if_gif.c if_pppoe.c

Log Message:
Ensure to call if_register after interface initializations finish


To generate a diff of this commit:
cvs rdiff -u -r1.579 -r1.580 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.155 -r1.156 src/sys/dev/pci/ixgbe/ixgbe.c
cvs rdiff -u -r1.100 -r1.101 src/sys/dev/pci/ixgbe/ixv.c
cvs rdiff -u -r1.155 -r1.156 src/sys/net/if_bridge.c
cvs rdiff -u -r1.141 -r1.142 src/sys/net/if_gif.c
cvs rdiff -u -r1.137 -r1.138 src/sys/net/if_pppoe.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/if_wm.c
diff -u src/sys/dev/pci/if_wm.c:1.579 src/sys/dev/pci/if_wm.c:1.580
--- src/sys/dev/pci/if_wm.c:1.579	Thu May 10 03:43:42 2018
+++ src/sys/dev/pci/if_wm.c	Fri May 25 04:40:26 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_wm.c,v 1.579 2018/05/10 03:43:42 msaitoh Exp $	*/
+/*	$NetBSD: if_wm.c,v 1.580 2018/05/25 04:40:26 ozaki-r Exp $	*/
 
 /*
  * Copyright (c) 2001, 2002, 2003, 2004 Wasabi Systems, Inc.
@@ -83,7 +83,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.579 2018/05/10 03:43:42 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_wm.c,v 1.580 2018/05/25 04:40:26 ozaki-r Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_net_mpsafe.h"
@@ -2829,8 +2829,8 @@ alloc_retry:
 	}
 	sc->sc_ipq = if_percpuq_create(&sc->sc_ethercom.ec_if);
 	ether_ifattach(ifp, enaddr);
-	if_register(ifp);
 	ether_set_ifflags_cb(&sc->sc_ethercom, wm_ifflags_cb);
+	if_register(ifp);
 	rnd_attach_source(&sc->rnd_source, xname, RND_TYPE_NET,
 			  RND_FLAG_DEFAULT);
 

Index: src/sys/dev/pci/ixgbe/ixgbe.c
diff -u src/sys/dev/pci/ixgbe/ixgbe.c:1.155 src/sys/dev/pci/ixgbe/ixgbe.c:1.156
--- src/sys/dev/pci/ixgbe/ixgbe.c:1.155	Wed May 23 10:11:07 2018
+++ src/sys/dev/pci/ixgbe/ixgbe.c	Fri May 25 04:40:27 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: ixgbe.c,v 1.155 2018/05/23 10:11:07 msaitoh Exp $ */
+/* $NetBSD: ixgbe.c,v 1.156 2018/05/25 04:40:27 ozaki-r Exp $ */
 
 /******************************************************************************
 
@@ -1316,7 +1316,6 @@ ixgbe_setup_interface(device_t dev, stru
 	 * We use per TX queue softint, so if_deferred_start_init() isn't
 	 * used.
 	 */
-	if_register(ifp);
 	ether_set_ifflags_cb(ec, ixgbe_ifflags_cb);
 
 	adapter->max_frame_size = ifp->if_mtu + ETHER_HDR_LEN + ETHER_CRC_LEN;
@@ -1365,6 +1364,8 @@ ixgbe_setup_interface(device_t dev, stru
 	/* Set autoselect media by default */
 	ifmedia_set(&adapter->media, IFM_ETHER | IFM_AUTO);
 
+	if_register(ifp);
+
 	return (0);
 } /* ixgbe_setup_interface */
 

Index: src/sys/dev/pci/ixgbe/ixv.c
diff -u src/sys/dev/pci/ixgbe/ixv.c:1.100 src/sys/dev/pci/ixgbe/ixv.c:1.101
--- src/sys/dev/pci/ixgbe/ixv.c:1.100	Wed May 23 10:11:07 2018
+++ src/sys/dev/pci/ixgbe/ixv.c	Fri May 25 04:40:27 2018
@@ -1,4 +1,4 @@
-/*$NetBSD: ixv.c,v 1.100 2018/05/23 10:11:07 msaitoh Exp $*/
+/*$NetBSD: ixv.c,v 1.101 2018/05/25 04:40:27 ozaki-r Exp $*/
 
 /******************************************************************************
 
@@ -1519,7 +1519,6 @@ ixv_setup_interface(device_t dev, struct
 	 * We use per TX queue softint, so if_deferred_start_init() isn't
 	 * used.
 	 */
-	if_register(ifp);
 	ether_set_ifflags_cb(ec, ixv_ifflags_cb);
 
 	adapter->max_frame_size = ifp->if_mtu + IXGBE_MTU_HDR;
@@ -1558,6 +1557,8 @@ ixv_setup_interface(device_t dev, struct
 	ifmedia_add(&adapter->media, IFM_ETHER | IFM_AUTO, 0, NULL);
 	ifmedia_set(&adapter->media, IFM_ETHER | IFM_AUTO);
 
+	if_register(ifp);
+
 	return 0;
 } /* ixv_setup_interface */
 

Index: src/sys/net/if_bridge.c
diff -u src/sys/net/if_bridge.c:1.155 src/sys/net/if_bridge.c:1.156
--- src/sys/net/if_bridge.c:1.155	Mon May 14 02:55:03 2018
+++ src/sys/net/if_bridge.c	Fri May 25 04:40:27 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_bridge.c,v 1.155 2018/05/14 02:55:03 ozaki-r Exp $	*/
+/*	$NetBSD: if_bridge.c,v 1.156 2018/05/25 04:40:27 ozaki-r Exp $	*/
 
 /*
  * Copyright 2001 Wasabi Systems, Inc.
@@ -80,7 +80,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_bridge.c,v 1.155 2018/05/14 02:55:03 ozaki-r Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_bridge.c,v 1.156 2018/05/25 04:40:27 ozaki-r Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_bridge_ipf.h"
@@ -470,9 +470,8 @@ bridge_clone_create(struct if_clone *ifc
 
 		return error;
 	}
-	if_register(ifp);
-
 	if_alloc_sadl(ifp);
+	if_register(ifp);
 
 	return 0;
 }

Index: src/sys/net/if_gif.c
diff -u src/sys/net/if_gif.c:1.141 src/sys/net/if_gif.c:1.142
--- src/sys/net/if_gif.c:1.141	Tue May  1 07:21:39 2018
+++ src/sys/net/if_gif.c	Fri May 25 04:40:27 2018
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_gif.c,v 1.141 2018/05/01 07:21:39 maxv Exp $	*/
+/*	$NetBSD: if_gif.c,v 1.142 2018/05/25 04:40:27 ozaki-r Exp $	*/
 /*	$KAME: if_gif.c,v 1.76 2001/08/20 02:01:02 kjc Exp $	*/
 
 /*
@@ -31,7 +31,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_gif.c,v 1.141 2018/05/01 07:21:39 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_gif.c,v 1.142 2018/05/25 04:40:27 ozaki-r Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_inet.h"
@@ -306,9 +306,9 @@ gifattach0(struct gif_softc *sc)
 	if (rv != 0)
 		return rv;
 
-	if_register(&sc->gif_if);
 	if_alloc_sadl(&sc->gif_if);
 	bpf_attach(&sc->gif_if, DLT_NULL, sizeof(u_int));
+	if_register(&sc->gif_if);
 	return 0;
 }
 

Index: src/sys/net/if_pppoe.c
diff -u src/sys/net/if_pppoe.c:1.137 src/sys/net/if_pppoe.c:1.138
--- src/sys/net/if_pppoe.c:1.137	Thu May  3 16:52:42 2018
+++ src/sys/net/if_pppoe.c	Fri May 25 04:40:27 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: if_pppoe.c,v 1.137 2018/05/03 16:52:42 maxv Exp $ */
+/* $NetBSD: if_pppoe.c,v 1.138 2018/05/25 04:40:27 ozaki-r Exp $ */
 
 /*-
  * Copyright (c) 2002, 2008 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_pppoe.c,v 1.137 2018/05/03 16:52:42 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_pppoe.c,v 1.138 2018/05/25 04:40:27 ozaki-r Exp $");
 
 #ifdef _KERNEL_OPT
 #include "pppoe.h"
@@ -336,12 +336,12 @@ pppoe_clone_create(struct if_clone *ifc,
 	}
 	sc->sc_sppp.pp_if.if_percpuq = if_percpuq_create(&sc->sc_sppp.pp_if);
 	sppp_attach(&sc->sc_sppp.pp_if);
-	if_register(&sc->sc_sppp.pp_if);
 
 	bpf_attach(&sc->sc_sppp.pp_if, DLT_PPP_ETHER, 0);
 	if (LIST_EMPTY(&pppoe_softc_list)) {
 		pfil_add_ihook(pppoe_ifattach_hook, NULL, PFIL_IFNET, if_pfil);
 	}
+	if_register(&sc->sc_sppp.pp_if);
 
 	rw_init(&sc->sc_lock);
 

Reply via email to