From nobody Mon Mar 6 15:08:28 2023 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PVhmD6XJ7z3x0hg; Mon, 6 Mar 2023 15:08:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PVhmD5tstz3mg0; Mon, 6 Mar 2023 15:08:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1678115308; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AvuMDZm9tlVvDB35MfHaTJeKZS58UyBRTWvJvUIWfz4=; b=aTlVbJ2IVVNvMfYH4YKSgxvZz2snvTfKopA3fu8laO0nWS02GlTpxaMp58mrL/1G+2b752 cZ0W4OzMNf5YefX7nhvSsU3xyA7/38AhZqV/+lrRiYbbuJ/mU6T9BA68M1gLBdPfREw8nl TKacdZcRuSH++o1Qwasf48dqcvzdnfTbZwlACsSR6oZ+RNvr4BJvDt3pg9mayQBgxoSSde potzgeyKWSqGb6A3X11bUmAmSdIvYPtCOqwCFlaXsbFdVKFC9gojiNPQNxZk9d4vV5WoSI Ei5lFM3msPBaRIhoCNEJzDFlFJy4XpOB8gai0iMgu5/IEunOkd9WxszID7GtTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1678115308; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=AvuMDZm9tlVvDB35MfHaTJeKZS58UyBRTWvJvUIWfz4=; b=AqtkmhVcbnGIVFxDT2EwjxQTi5IWidFOUcWqj3Y3H4AbYjwh5avxO7LERS7n51x/bDBC+3 UOXVpR9T2F3NX/eKa7/Nmld4x1h1Xjl+xktftXdHrToq8P1W7mHDaLXsil8F5Nw7OIHLcM UYfNX2lTBZuf78OoJEvbzPA9jWCBfRfkvQgyjkcqTHqp1L3shcupYZ1r9PAmMCvp6Zhxp3 9hwRDXFov1vzVK6uRL3Ti3DP+6b7wkIxtpo9U8kqZr8bvaGitzthoqz7D17kgLpF6OoJH2 KfqrTXZNvzaGS5kORoosdBz5fioHuCrxhuPIfO4gNOD4iL03z5TF6evZzoLwEg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1678115308; a=rsa-sha256; cv=none; b=l4ZVSr4dlzQz3Rh5kE2L22JRyOSkcersyf3A9JqFVZ81l9b0x5/DUqr+kQHxjztLeZfRDK 8m6FkwQI/nRdgDOODWz3ZEmMNltaSOzl+fwXbB0cqpJtv0LDn+RrbMJediKXNqLWrPOSXx a62Q3i0PzRn/ey90JXzotUFEnoBcXwa90JFcVr1R87yZbqwOBVQyRiVffwz8toY6LZTfh9 B4z8ArkS1bmIb+KhuDkZTWGDn7Nr/ne7+/uzmkQqUUfJxneJyqMG7CmThzgabCL7e9lKhQ xOTQivitn9cFM+S5KMadFatHXM6EMdNTFDXdWO1KmgG+vyxVGb9c+2XTiBZVLA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PVhmD4y2Bz16Cm; Mon, 6 Mar 2023 15:08:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 326F8SIZ076636; Mon, 6 Mar 2023 15:08:28 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 326F8S74076635; Mon, 6 Mar 2023 15:08:28 GMT (envelope-from git) Date: Mon, 6 Mar 2023 15:08:28 GMT Message-Id: <202303061508.326F8S74076635@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: 66bdbcd544d5 - main - net: unify mtu update code List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 66bdbcd544d57fa629954d1e0b32fe21ae66a9b7 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=66bdbcd544d57fa629954d1e0b32fe21ae66a9b7 commit 66bdbcd544d57fa629954d1e0b32fe21ae66a9b7 Author: Alexander V. Chernikov AuthorDate: 2023-03-03 16:30:15 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-03-06 15:08:08 +0000 net: unify mtu update code Subscribers: imp, ae, glebius Differential Revision: https://reviews.freebsd.org/D38893 --- sys/net/if.c | 17 +++++++++++------ sys/net/if_bridge.c | 16 ++-------------- sys/net/if_lagg.c | 16 ++-------------- sys/net/if_var.h | 1 + sys/net/if_vlan.c | 16 ++-------------- 5 files changed, 18 insertions(+), 48 deletions(-) diff --git a/sys/net/if.c b/sys/net/if.c index bc13cdaf05f5..58711061eb5e 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -2853,12 +2853,8 @@ ifhwioctl(u_long cmd, struct ifnet *ifp, caddr_t data, struct thread *td) /* * If the link MTU changed, do network layer specific procedure. */ - if (ifp->if_mtu != oldmtu) { -#ifdef INET6 - nd6_setmtu(ifp); -#endif - rt_updatemtu(ifp); - } + if (ifp->if_mtu != oldmtu) + if_notifymtu(ifp); break; } @@ -4470,6 +4466,15 @@ if_setmtu(if_t ifp, int mtu) return (0); } +void +if_notifymtu(if_t ifp) +{ +#ifdef INET6 + nd6_setmtu(ifp); +#endif + rt_updatemtu(ifp); +} + int if_getmtu(const if_t ifp) { diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index 9f99434dd4e0..60a1683c74ae 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -136,14 +136,6 @@ __FBSDID("$FreeBSD$"); #include -#ifdef INET6 -/* - * XXX: declare here to avoid to include many inet6 related files.. - * should be more generalized? - */ -extern void nd6_setmtu(struct ifnet *); -#endif - /* * Size of the route hash table. Must be a power of two. */ @@ -910,12 +902,8 @@ bridge_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) * Bridge MTU may change during addition of the first port. * If it did, do network layer specific procedure. */ - if (ifp->if_mtu != oldmtu) { -#ifdef INET6 - nd6_setmtu(ifp); -#endif - rt_updatemtu(ifp); - } + if (ifp->if_mtu != oldmtu) + if_notifymtu(ifp); if (bc->bc_flags & BC_F_COPYOUT) error = copyout(&args, ifd->ifd_data, ifd->ifd_len); diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index c649a2c3372e..1ac8492834fc 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -77,14 +77,6 @@ __FBSDID("$FreeBSD$"); #include #include -#ifdef INET6 -/* - * XXX: declare here to avoid to include many inet6 related files.. - * should be more generalized? - */ -extern void nd6_setmtu(struct ifnet *); -#endif - #ifdef DEV_NETMAP MODULE_DEPEND(if_lagg, netmap, 1, 1, 1); #endif @@ -1636,12 +1628,8 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) * LAGG MTU may change during addition of the first port. * If it did, do network layer specific procedure. */ - if (ifp->if_mtu != oldmtu) { -#ifdef INET6 - nd6_setmtu(ifp); -#endif - rt_updatemtu(ifp); - } + if (ifp->if_mtu != oldmtu) + if_notifymtu(ifp); VLAN_CAPABILITIES(ifp); break; diff --git a/sys/net/if_var.h b/sys/net/if_var.h index 7200cd5634d3..c9b2de736d10 100644 --- a/sys/net/if_var.h +++ b/sys/net/if_var.h @@ -618,6 +618,7 @@ void if_setbroadcastaddr(if_t ifp, const uint8_t *); int if_setmtu(if_t ifp, int mtu); int if_getmtu(const if_t ifp); int if_getmtu_family(const if_t ifp, int family); +void if_notifymtu(if_t ifp); int if_setflagbits(if_t ifp, int set, int clear); int if_setflags(if_t ifp, int flags); int if_getflags(const if_t ifp); diff --git a/sys/net/if_vlan.c b/sys/net/if_vlan.c index d8be44b105f1..0f2ded3f6040 100644 --- a/sys/net/if_vlan.c +++ b/sys/net/if_vlan.c @@ -85,14 +85,6 @@ __FBSDID("$FreeBSD$"); #include #endif -#ifdef INET6 -/* - * XXX: declare here to avoid to include many inet6 related files.. - * should be more generalized? - */ -extern void nd6_setmtu(struct ifnet *); -#endif - #define VLAN_DEF_HWIDTH 4 #define VLAN_IFFLAGS (IFF_BROADCAST | IFF_MULTICAST) @@ -2110,12 +2102,8 @@ vlan_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) * VLAN MTU may change during addition of the vlandev. * If it did, do network layer specific procedure. */ - if (ifp->if_mtu != oldmtu) { -#ifdef INET6 - nd6_setmtu(ifp); -#endif - rt_updatemtu(ifp); - } + if (ifp->if_mtu != oldmtu) + if_notifymtu(ifp); break; case SIOCGETVLAN: