[PATCH v7 net-next 3/9] net: switchdev: add support for offloading of the FDB locked flag
netdev at kapio-technology.com
netdev at kapio-technology.com
Tue Oct 18 07:29:05 PDT 2022
On 2022-10-13 16:06, Ido Schimmel wrote:
> On Sun, Oct 09, 2022 at 07:40:46PM +0200, Hans J. Schultz wrote:
>> Add support for offloading of the MAB/MacAuth feature flag and the FDB
>> locked flag which is used by the Mac-Auth/MAB feature.
>>
>> Signed-off-by: Hans J. Schultz <netdev at kapio-technology.com>
>> ---
>> include/net/dsa.h | 2 ++
>> include/net/switchdev.h | 1 +
>> net/bridge/br.c | 4 ++--
>> net/bridge/br_fdb.c | 12 ++++++++++--
>> net/bridge/br_private.h | 2 +-
>> net/bridge/br_switchdev.c | 3 ++-
>> net/dsa/dsa_priv.h | 6 ++++--
>> net/dsa/port.c | 10 ++++++----
>> net/dsa/slave.c | 10 ++++++++--
>> net/dsa/switch.c | 16 ++++++++--------
>> 10 files changed, 44 insertions(+), 22 deletions(-)
>
> There is more than one logical change here. I suggest splitting it to
> make review easier:
>
> 1. A patch allowing the bridge driver to install locked entries
> notified
> from device drivers. These changes:
>
> include/net/switchdev.h | 1 +
> net/bridge/br.c | 4 ++--
> net/bridge/br_fdb.c | 12 ++++++++++--
> net/bridge/br_private.h | 2 +-
>
> And the br_switchdev_fdb_populate() hunk
>
> 2. A patch allowing DSA core to report locked entries to the bridge
> driver
2. This requires no code in the DSA layer as the bridge listens directly
to the
kernel switchdev notifications.
>
> 3. A patch adding the new MAB flag to BR_PORT_FLAGS_HW_OFFLOAD
>
> 4. A patch allowing DSA core to propagate the MAB flag to device
> drivers
>
> [...]
>
>> diff --git a/net/dsa/port.c b/net/dsa/port.c
>> index e4a0513816bb..eab32b7a945a 100644
>> --- a/net/dsa/port.c
>> +++ b/net/dsa/port.c
>> @@ -304,7 +304,7 @@ static int dsa_port_inherit_brport_flags(struct
>> dsa_port *dp,
>> struct netlink_ext_ack *extack)
>> {
>> const unsigned long mask = BR_LEARNING | BR_FLOOD | BR_MCAST_FLOOD |
>> - BR_BCAST_FLOOD | BR_PORT_LOCKED;
>> + BR_BCAST_FLOOD;
>
> Not sure how this is related to the patchset.
>
>> struct net_device *brport_dev = dsa_port_to_bridge_port(dp);
>> int flag, err;
More information about the Linux-mediatek
mailing list