[PATCH v3 net-next 0/6] vxlan: convert configuration to RCU and enable lockless dumps
From: Eric Dumazet <edumazet@google.com>
Date: 2026-09-11 06:22:03
This patch series converts struct vxlan_config to RCU protection, eliminates
redundant destination fields, and enables lockless RTNL-free link dumping
in vxlan_fill_info().
Changes in v3:
- Folded configuration conversion patches into a single patch to maintain
clean bisectability and avoid intermediate mutable state.
- In vxlan_changelink(), pass lowerdev to vxlan_config_apply() to prevent
truncating dev->needed_headroom and dev->needed_tailroom when lowerdev
does not change.
- In vxlan_changelink(), ensure default FDB updates for VNI filters trigger
when remote_ifindex changes, even if remote_ip is unchanged.
- Pass old and new ifindex to vxlan_vnilist_update_group() and
vxlan_update_default_fdb_entry() so newly added FDB entries point to
the new interface and deletions target the old interface.
- Cleaned up redundant NULL checks and unreachable error paths.
Eric Dumazet (6):
vxlan: vnifilter: use list_for_each_entry_rcu() in
vxlan_vnifilter_dump_dev()
vxlan: pass vxlan_config pointer to helper functions
vxlan: move VXLAN_F_MDB to struct vxlan_dev flags
vxlan: convert configuration to RCU protection
vxlan: remove default_dst and use vxlan_config and lowerdev
vxlan: no longer rely on RTNL in vxlan_fill_info()
.../mellanox/mlx5/core/en/tc_tun_vxlan.c | 11 +-
.../mellanox/mlxsw/spectrum_nve_vxlan.c | 14 +-
.../mellanox/mlxsw/spectrum_switchdev.c | 57 +-
drivers/net/vxlan/vxlan_core.c | 717 +++++++++++-------
drivers/net/vxlan/vxlan_mdb.c | 45 +-
drivers/net/vxlan/vxlan_multicast.c | 76 +-
drivers/net/vxlan/vxlan_private.h | 19 +-
drivers/net/vxlan/vxlan_vnifilter.c | 96 ++-
include/net/vxlan.h | 12 +-
9 files changed, 638 insertions(+), 409 deletions(-)
--
2.55.0.1007.g17ff1f9808-goog