From: Petr Machata <petrm@xxxxxxxxxxxx> Date: Wed, 12 Dec 2018 17:02:46 +0000 > Drivers may need to do validation as a result of port object addition. > An example is mlxsw, which needs to check the configuration of a VXLAN > device attached to an offloaded bridge. Without a mapped VLAN, the > invalidity of the device is not important, but as soon as a pvid, > untagged VLAN is configured for the device, it has to be validated and > offloaded. Should the validation fail, there's currently no way to > communicate details of the failure to the user, beyond an error number. > > Because currently, extack is not available at all in that area of code, > this patch starts down at the RTNL level and progresses up towards the > driver(s). > > In patch #1, ndo_bridge_setlink is updated to include extack, and > callbacks of all clients are updated as well (ignoring the argument). > > In patch #2, the bridge driver is updated to propagate the extack > through to the switchdev border, br_switchdev_port_vlan_add(). > > Patches #3, #4 and #5 then gradually extend switchdev to pass the extack > argument through to the switchdev blocking notifier chain. > > Patches #6 and #7 then update mlxsw to pass the extack argument from > VXLAN events resp. port events on to mlxsw_sp_bridge_8021q_vxlan_join(). > > Finally in patches #8 and #9, the code paths from the previous two > patches are verified to yield an error message. > > v2: > - Patch #1: > - In ndo_bridge_setlink(), keep the whole extack declaration on the > same line. Series applied, thanks Petr.