summaryrefslogtreecommitdiff
path: root/include/linux/netdevice.h
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2023-07-28 11:36:00 -0700
committerJakub Kicinski <kuba@kernel.org>2023-07-28 11:36:00 -0700
commit5bdc312c1d06fb4ef02bd62fd077e4fa722012e6 (patch)
treeb977b7a1bda1dfea681cdcc02acdfd6f51ec7d41 /include/linux/netdevice.h
parent083476a2023ce64991e17565707e205a1bf78d63 (diff)
parent84e00d9bd4e472bd9b145ed40dbd132dd7a15462 (diff)
downloadlinux-5bdc312c1d06fb4ef02bd62fd077e4fa722012e6.tar.gz
linux-5bdc312c1d06fb4ef02bd62fd077e4fa722012e6.tar.bz2
linux-5bdc312c1d06fb4ef02bd62fd077e4fa722012e6.zip
Merge branch 'net-store-netdevs-in-an-xarray'
Jakub Kicinski says: ==================== net: store netdevs in an xarray One of more annoying developer experience gaps we have in netlink is iterating over netdevs. It's painful. Add an xarray to make it trivial. v1: https://lore.kernel.org/all/20230722014237.4078962-1-kuba@kernel.org/ ==================== Link: https://lore.kernel.org/r/20230726185530.2247698-1-kuba@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include/linux/netdevice.h')
-rw-r--r--include/linux/netdevice.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 32a4cdf37dd4..84c36a7f873f 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -3016,6 +3016,9 @@ extern rwlock_t dev_base_lock; /* Device list lock */
if (netdev_master_upper_dev_get_rcu(slave) == (bond))
#define net_device_entry(lh) list_entry(lh, struct net_device, dev_list)
+#define for_each_netdev_dump(net, d, ifindex) \
+ xa_for_each_start(&(net)->dev_by_index, (ifindex), (d), (ifindex))
+
static inline struct net_device *next_net_device(struct net_device *dev)
{
struct list_head *lh;