]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: add ndo_fdb_del_bulk
authorNikolay Aleksandrov <razor@blackwall.org>
Wed, 13 Apr 2022 10:51:56 +0000 (13:51 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 29 Oct 2025 12:59:59 +0000 (13:59 +0100)
[ Upstream commit 1306d5362a591493a2d07f685ed2cc480dcda320 ]

Add a new netdev op called ndo_fdb_del_bulk, it will be later used for
driver-specific bulk delete implementation dispatched from rtnetlink. The
first user will be the bridge, we need it to signal to rtnetlink from
the driver that we support bulk delete operation (NLM_F_BULK).

Signed-off-by: Nikolay Aleksandrov <razor@blackwall.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: bf29555f5bdc ("rtnetlink: Allow deleting FDB entries in user namespace")
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/linux/netdevice.h

index f5c1058f565c8e4ab91388aa5925acb1112e8ee1..037a48bc5690a39d8332bce531d3db84e509882e 100644 (file)
@@ -1158,6 +1158,10 @@ struct tlsdev_ops;
  *                   struct net_device *dev,
  *                   const unsigned char *addr, u16 vid)
  *     Deletes the FDB entry from dev coresponding to addr.
+ * int (*ndo_fdb_del_bulk)(struct ndmsg *ndm, struct nlattr *tb[],
+ *                        struct net_device *dev,
+ *                        u16 vid,
+ *                        struct netlink_ext_ack *extack);
  * int (*ndo_fdb_dump)(struct sk_buff *skb, struct netlink_callback *cb,
  *                    struct net_device *dev, struct net_device *filter_dev,
  *                    int *idx)
@@ -1396,6 +1400,11 @@ struct net_device_ops {
                                               struct net_device *dev,
                                               const unsigned char *addr,
                                               u16 vid);
+       int                     (*ndo_fdb_del_bulk)(struct ndmsg *ndm,
+                                                   struct nlattr *tb[],
+                                                   struct net_device *dev,
+                                                   u16 vid,
+                                                   struct netlink_ext_ack *extack);
        int                     (*ndo_fdb_dump)(struct sk_buff *skb,
                                                struct netlink_callback *cb,
                                                struct net_device *dev,