Unconfiguring a member interface from trunk(4) or simply destroying the
trunk pulls the member down for no reason, both comment and code are
there since import, but I see no justification for doing so.
aggr(4) does not pull its member down upon removal either.
I came across this after
$ doas ifconfig trunk0 destroy
$ doas sh /etc/netstart trunk0
yielded no network and I had to manually pull up members.
Feedback? OK?
Index: if_trunk.c
===================================================================
RCS file: /cvs/src/sys/net/if_trunk.c,v
retrieving revision 1.149
diff -u -p -r1.149 if_trunk.c
--- if_trunk.c 28 Jul 2020 09:52:32 -0000 1.149
+++ if_trunk.c 12 Sep 2020 15:41:14 -0000
@@ -423,10 +423,6 @@ trunk_port_destroy(struct trunk_port *tp
/* Remove multicast addresses from this port */
trunk_ether_cmdmulti(tp, SIOCDELMULTI);
- /* Port has to be down */
- if (ifp->if_flags & IFF_UP)
- if_down(ifp);
-
ifpromisc(ifp, 0);
if (tr->tr_port_destroy != NULL)