]> 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 13:03:11 +0000 (14:03 +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 179c569a55c42f44f03d17500f6addaf4c2f4e31..83bb0f21b1b0222c8caa67e9a76fe8ce73f9eb2d 100644 (file)
@@ -1273,6 +1273,10 @@ struct netdev_net_notifier {
  *                   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)
@@ -1528,6 +1532,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,