diff options
author | mav <mav@FreeBSD.org> | 2017-06-08 14:34:39 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2017-06-08 14:34:39 +0000 |
commit | 6c89ebbbedc75d85a8a164f913018a0c36566280 (patch) | |
tree | 4d2f6a3a2963b61906de7fed58a26533362fdee7 | |
parent | 85c25de3733c5de0c5d9f29eaa3ea3fc9598bee0 (diff) | |
download | FreeBSD-src-6c89ebbbedc75d85a8a164f913018a0c36566280.zip FreeBSD-src-6c89ebbbedc75d85a8a164f913018a0c36566280.tar.gz |
MFC r318970: Call VLAN_CAPABILITIES() when LAGG capabilities change.
This makes VLAN on top of LAGG to expose proper capabilities if they are
changed after creation.
Approved by: re (marius)
-rw-r--r-- | sys/net/if_lagg.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/net/if_lagg.c b/sys/net/if_lagg.c index 69d2f35..2883de0 100644 --- a/sys/net/if_lagg.c +++ b/sys/net/if_lagg.c @@ -890,6 +890,7 @@ lagg_port_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) LAGG_XLOCK(sc); lagg_capabilities(sc); LAGG_XUNLOCK(sc); + VLAN_CAPABILITIES(sc->sc_ifp); break; case SIOCSIFMTU: @@ -1003,6 +1004,7 @@ lagg_port_ifdetach(void *arg __unused, struct ifnet *ifp) lp->lp_detaching = 1; lagg_port_destroy(lp, 1); LAGG_XUNLOCK(sc); + VLAN_CAPABILITIES(sc->sc_ifp); } static void @@ -1362,6 +1364,7 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) error = lagg_port_create(sc, tpif); LAGG_XUNLOCK(sc); if_rele(tpif); + VLAN_CAPABILITIES(ifp); break; case SIOCSLAGGDELPORT: error = priv_check(td, PRIV_NET_LAGG); @@ -1385,6 +1388,7 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) error = lagg_port_destroy(lp, 1); LAGG_XUNLOCK(sc); if_rele(tpif); + VLAN_CAPABILITIES(ifp); break; case SIOCSIFFLAGS: /* Set flags on ports too */ @@ -1435,6 +1439,7 @@ lagg_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) } lagg_capabilities(sc); LAGG_XUNLOCK(sc); + VLAN_CAPABILITIES(ifp); error = 0; break; |