On Sun, Oct 30, 2022 at 11:09:31PM +0100, netdev@xxxxxxxxxxxxxxxxxxxx wrote: > On 2022-10-25 12:00, Ido Schimmel wrote: > > @@ -943,6 +946,14 @@ 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_MAB) && > > + (!(p->flags & BR_PORT_LOCKED) || !(p->flags & BR_LEARNING))) { > > + NL_SET_ERR_MSG(extack, "MAB can only be enabled on a locked port > > with learning enabled"); > > It's a bit odd to get this message when turning off learning on a port with > MAB on, e.g.... > > # bridge link set dev a2 learning off > Error: MAB can only be enabled on a locked port with learning enabled. It's better if you suggest something else. How about: "Bridge port must be locked and have learning enabled when MAB is enabled" ?