Thread (5 messages) flat view 5 messages, 1 author, 25d ago

Re: [PATCH net 0/2] bridge/vxlan: fix reading neigh ha without synchronization

From: Nikolay Aleksandrov <razor@blackwall.org>
Date: 2026-08-17 15:25:15
Also in: bridge

On 17/08/2026 17:36, Nikolay Aleksandrov wrote:
Hi,
Neigh ha address must be read using the seqlock to get a stable snapshot.
Both the bridge and vxlan read it directly and can see partial updates.
I reproduced both issues with running neigh updates and exercising these
paths in parallel and saw partial addresses, e.g. updating between
neigh A: 02:00:00:00:00:00 neigh B: fe:ff:ff:ff:ff:ff was able to observe
02:00:ff:ff:ff:ff and fe:ff:00:00:00:00 in packets. Noticed this initially
in the bridge, then checked vxlan and its arp/neigh_reduce functions have
the same bug, route_shortcircuit is doing the right thing already.

Cheers,
  Nik

Nikolay Aleksandrov (2):
   net: bridge: arp/nd proxy: fix reading neigh ha
   vxlan: fix reading neigh ha

  drivers/net/vxlan/vxlan_core.c | 20 +++++++++++++-------
  net/bridge/br_arp_nd_proxy.c   | 24 ++++++++++++++----------
  2 files changed, 27 insertions(+), 17 deletions(-)
(-CC bouncing emails)

Hmm perhaps it's better to use ETH_ALEN instead of MAX_ADDR_LEN to explicitly
show the expected len everywhere, it cannot be different anyway.
I'll do it for v2 after 24h.

Cheers,
  Nik


Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help