Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Jun 2024 10:01:24 GMT
From:      Zhenlei Huang <zlei@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: 2cb7605a2415 - main - lo: Use new KPI to create the first loop interface
Message-ID:  <202406261001.45QA1OgO090771@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by zlei:

URL: https://cgit.FreeBSD.org/src/commit/?id=2cb7605a2415a1c0dd35374a88f815ef00e31de9

commit 2cb7605a2415a1c0dd35374a88f815ef00e31de9
Author:     Zhenlei Huang <zlei@FreeBSD.org>
AuthorDate: 2024-06-26 10:00:37 +0000
Commit:     Zhenlei Huang <zlei@FreeBSD.org>
CommitDate: 2024-06-26 10:00:37 +0000

    lo: Use new KPI to create the first loop interface
    
    While here remove a pointless static local variable lo_cloner.
    
    No functional change intended.
    
    Reviewed by:    kp
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D45728
---
 sys/net/if_loop.c | 13 ++-----------
 1 file changed, 2 insertions(+), 11 deletions(-)

diff --git a/sys/net/if_loop.c b/sys/net/if_loop.c
index c5be3d17f447..926d264073ec 100644
--- a/sys/net/if_loop.c
+++ b/sys/net/if_loop.c
@@ -93,13 +93,9 @@ static int	looutput(struct ifnet *ifp, struct mbuf *m,
 		    const struct sockaddr *dst, struct route *ro);
 
 VNET_DEFINE(struct ifnet *, loif);	/* Used externally */
-
-#ifdef VIMAGE
 VNET_DEFINE_STATIC(struct if_clone *, lo_cloner);
 #define	V_lo_cloner		VNET(lo_cloner)
-#endif
 
-static struct if_clone *lo_cloner;
 static const char loname[] = "lo";
 
 static int
@@ -141,8 +137,6 @@ lo_clone_create(struct if_clone *ifc, char *name, size_t len,
 	ifp->if_hwassist = LO_CSUM_FEATURES | LO_CSUM_FEATURES6;
 	if_attach(ifp);
 	bpfattach(ifp, DLT_NULL, sizeof(u_int32_t));
-	if (V_loif == NULL)
-		V_loif = ifp;
 	*ifpp = ifp;
 
 	return (0);
@@ -156,12 +150,9 @@ vnet_loif_init(const void *unused __unused)
 		.destroy_f = lo_clone_destroy,
 		.flags = IFC_F_AUTOUNIT,
 	};
-	lo_cloner = ifc_attach_cloner(loname, &req);
-#ifdef VIMAGE
-	V_lo_cloner = lo_cloner;
-#endif
+	V_lo_cloner = ifc_attach_cloner(loname, &req);
 	struct ifc_data ifd = { .unit = 0 };
-	ifc_create_ifp(loname, &ifd, NULL);
+	ifc_create_ifp(loname, &ifd, &V_loif);
 }
 VNET_SYSINIT(vnet_loif_init, SI_SUB_PSEUDO, SI_ORDER_ANY,
     vnet_loif_init, NULL);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202406261001.45QA1OgO090771>