On 2022-08-29 09:52, Ido Schimmel wrote:
On Sun, Aug 28, 2022 at 12:23:30PM +0200, netdev@xxxxxxxxxxxxxxxxxxxx
wrote:
On 2022-08-27 17:19, Ido Schimmel wrote:
> On Fri, Aug 26, 2022 at 01:45:33PM +0200, Hans Schultz wrote:
> >
> > nbp_switchdev_frame_mark(p, skb);
> > @@ -943,6 +946,10 @@ static int br_setport(struct net_bridge_port
> > *p, struct nlattr *tb[],
> > br_set_port_flag(p, tb, IFLA_BRPORT_NEIGH_SUPPRESS,
> > BR_NEIGH_SUPPRESS);
> > br_set_port_flag(p, tb, IFLA_BRPORT_ISOLATED, BR_ISOLATED);
> > br_set_port_flag(p, tb, IFLA_BRPORT_LOCKED, BR_PORT_LOCKED);
> > + br_set_port_flag(p, tb, IFLA_BRPORT_MAB, BR_PORT_MAB);
> > +
> > + if (!(p->flags & BR_PORT_LOCKED))
> > + p->flags &= ~BR_PORT_MAB;
The reason for this is that I wanted it to be so that if you have MAB
enabled (and locked of course) and unlock the port, it will
automatically
clear both flags instead of having to first disable MAB and then
unlock the
port.
User space can just do:
# bridge link set dev swp1 locked off mab off
I prefer not to push such logic into the kernel and instead fail
explicitly. I won't argue if more people are in favor.
I shall do it as you suggest. It sounds fair. :-)