[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2e53a70cbfa8b04fe396ef13993d107da31c8c4e.1729786087.git.petrm@nvidia.com>
Date: Thu, 24 Oct 2024 18:57:36 +0200
From: Petr Machata <petrm@...dia.com>
To: "David S. Miller" <davem@...emloft.net>, Eric Dumazet
<edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni
<pabeni@...hat.com>, <netdev@...r.kernel.org>
CC: Ido Schimmel <idosch@...dia.com>, Petr Machata <petrm@...dia.com>, "Amit
Cohen" <amcohen@...dia.com>, Vladimir Oltean <vladimir.oltean@....com>, "Andy
Roulin" <aroulin@...dia.com>, <mlxsw@...dia.com>, Przemek Kitszel
<przemyslaw.kitszel@...el.com>, <intel-wired-lan@...ts.osuosl.org>,
<UNGLinuxDriver@...rochip.com>, Manish Chopra <manishc@...vell.com>,
<GR-Linux-NIC-Dev@...vell.com>, Kuniyuki Iwashima <kuniyu@...zon.com>,
"Andrew Lunn" <andrew+netdev@...n.ch>
Subject: [PATCH net-next v2 1/8] net: rtnetlink: Publish rtnl_fdb_notify()
In the next patch, responsibility for sending notification is moved from
the core to the driver that implement fdb_add (and fdb_del in the patch
after that). In this patch, export a helper that the core currently uses
for sending FDB notifications for the drivers to use as a fallback if there
is nothing specific to report.
Signed-off-by: Petr Machata <petrm@...dia.com>
Reviewed-by: Amit Cohen <amcohen@...dia.com>
---
Notes:
CC: Przemek Kitszel <przemyslaw.kitszel@...el.com>
CC: intel-wired-lan@...ts.osuosl.org
CC: UNGLinuxDriver@...rochip.com
CC: Manish Chopra <manishc@...vell.com>
CC: GR-Linux-NIC-Dev@...vell.com
CC: Kuniyuki Iwashima <kuniyu@...zon.com>
CC: Andrew Lunn <andrew+netdev@...n.ch>
include/linux/rtnetlink.h | 2 ++
net/core/rtnetlink.c | 7 ++++---
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/include/linux/rtnetlink.h b/include/linux/rtnetlink.h
index 8468a4ce8510..2e48b4ca7187 100644
--- a/include/linux/rtnetlink.h
+++ b/include/linux/rtnetlink.h
@@ -192,6 +192,8 @@ extern int ndo_dflt_fdb_add(struct ndmsg *ndm,
const unsigned char *addr,
u16 vid,
u16 flags);
+extern void rtnl_fdb_notify(struct net_device *dev, const u8 *addr, u16 vid,
+ int type, u16 ndm_state);
extern int ndo_dflt_fdb_del(struct ndmsg *ndm,
struct nlattr *tb[],
struct net_device *dev,
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
index 194a81e5f608..e5c6dd4c5cf5 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -4271,7 +4271,7 @@ void rtmsg_ifinfo_newnet(int type, struct net_device *dev, unsigned int change,
static int nlmsg_populate_fdb_fill(struct sk_buff *skb,
struct net_device *dev,
- u8 *addr, u16 vid, u32 pid, u32 seq,
+ const u8 *addr, u16 vid, u32 pid, u32 seq,
int type, unsigned int flags,
int nlflags, u16 ndm_state)
{
@@ -4313,8 +4313,8 @@ static inline size_t rtnl_fdb_nlmsg_size(const struct net_device *dev)
0;
}
-static void rtnl_fdb_notify(struct net_device *dev, u8 *addr, u16 vid, int type,
- u16 ndm_state)
+void rtnl_fdb_notify(struct net_device *dev, const u8 *addr, u16 vid, int type,
+ u16 ndm_state)
{
struct net *net = dev_net(dev);
struct sk_buff *skb;
@@ -4336,6 +4336,7 @@ static void rtnl_fdb_notify(struct net_device *dev, u8 *addr, u16 vid, int type,
errout:
rtnl_set_sk_err(net, RTNLGRP_NEIGH, err);
}
+EXPORT_SYMBOL_GPL(rtnl_fdb_notify);
/*
* ndo_dflt_fdb_add - default netdevice operation to add an FDB entry
--
2.45.0
Powered by blists - more mailing lists