mbox series

[v2,net-next,0/3] net: prepare for removal of net->dev_index_head

Message ID 20241209100747.2269613-1-edumazet@google.com (mailing list archive)
Headers show
Series net: prepare for removal of net->dev_index_head | expand

Message

Eric Dumazet Dec. 9, 2024, 10:07 a.m. UTC
This series changes rtnl_fdb_dump, last iterator using net->dev_index_head[]

First patch creates ndo_fdb_dump_context structure, to no longer
assume specific layout for the arguments.

Second patch adopts for_each_netdev_dump() in rtnl_fdb_dump(),
while changing two first fields of ndo_fdb_dump_context.

Third patch removes the padding, thus changing the location
of ctx->fdb_idx now that all users agree on how to retrive it.

After this series, the only users of net->dev_index_head
are __dev_get_by_index() and dev_get_by_index_rcu().

We have to evaluate if switching them to dev_by_index xarray
would be sensible.

v2: addressed Ido feedback
v1: https://lore.kernel.org/netdev/20241207162248.18536-1-edumazet@google.com/T/#m800755d4b16c7f335927a76d9f52ebd37f7f077c

Eric Dumazet (3):
  rtnetlink: add ndo_fdb_dump_context
  rtnetlink: switch rtnl_fdb_dump() to for_each_netdev_dump()
  rtnetlink: remove pad field in ndo_fdb_dump_context

 .../ethernet/freescale/dpaa2/dpaa2-switch.c   |   3 +-
 drivers/net/ethernet/mscc/ocelot_net.c 	   |   3 +-
 drivers/net/vxlan/vxlan_core.c 			   |   5 +-
 include/linux/rtnetlink.h					   |   6 +
 net/bridge/br_fdb.c						   |   3 +-
 net/core/rtnetlink.c						   | 108 +++++++-----------
 net/dsa/user.c 							   |   3 +-
 7 files changed, 61 insertions(+), 70 deletions(-)

--
2.47.0.338.g60cca15819-goog

Comments

patchwork-bot+netdevbpf@kernel.org Dec. 11, 2024, 2:50 a.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Mon,  9 Dec 2024 10:07:44 +0000 you wrote:
> This series changes rtnl_fdb_dump, last iterator using net->dev_index_head[]
> 
> First patch creates ndo_fdb_dump_context structure, to no longer
> assume specific layout for the arguments.
> 
> Second patch adopts for_each_netdev_dump() in rtnl_fdb_dump(),
> while changing two first fields of ndo_fdb_dump_context.
> 
> [...]

Here is the summary with links:
  - [v2,net-next,1/3] rtnetlink: add ndo_fdb_dump_context
    https://git.kernel.org/netdev/net-next/c/be325f08c432
  - [v2,net-next,2/3] rtnetlink: switch rtnl_fdb_dump() to for_each_netdev_dump()
    https://git.kernel.org/netdev/net-next/c/53970a05f799
  - [v2,net-next,3/3] rtnetlink: remove pad field in ndo_fdb_dump_context
    https://git.kernel.org/netdev/net-next/c/53a6d8912372

You are awesome, thank you!