Netdev List
 help / color / mirror / Atom feed
From: Danielle Ratson <danieller@nvidia.com>
To: <netdev@vger.kernel.org>
Cc: <dsahern@kernel.org>, <stephen@networkplumber.org>,
	<razor@blackwall.org>, <petrm@nvidia.com>, <idosch@nvidia.com>,
	Danielle Ratson <danieller@nvidia.com>
Subject: [PATCH iproute2-next 0/2] Add support for neigh_forward_grat
Date: Sun, 17 May 2026 11:24:59 +0300	[thread overview]
Message-ID: <20260517082501.899009-1-danieller@nvidia.com> (raw)

The existing neighbor suppression unconditionally suppresses gratuitous
ARP and unsolicited Neighbor Advertisements, which breaks legitimate use
cases like Multi-Homing and EVPN where these announcements need to
propagate across the VXLAN fabric.

This series adds a new neigh_forward_grat option that provides
independent control of gratuitous ARP and unsolicited NA forwarding.
When neigh_suppress is enabled and neigh_forward_grat is also enabled,
regular neighbor discovery is suppressed while gratuitous announcements
are forwarded.

Both port-level control (via IFLA_BRPORT_NEIGH_FORWARD_GRAT) and
per-VLAN control (via BRIDGE_VLANDB_ENTRY_NEIGH_FORWARD_GRAT) are
provided. The default value of OFF preserves existing behavior.

The new attributes use NLA_U8, although the kernel netlink guideline
recommends NLA_U32 as the minimum integer type on the grounds that
alignment makes smaller types equivalent on the wire. For a simple
on/off attribute there is no technical advantage to u32 over u8, and
keeping u8 preserves consistency with all surrounding bridge port
attributes and avoids introducing new helpers alongside the existing
infrastructure.

Patch #1: adds port-level support via ip link and bridge link commands.
Patch #2: adds per-VLAN support via bridge vlan command.

Danielle Ratson (2):
  iplink: bridge_slave: Add support for neigh_forward_grat
  bridge: vlan: Add support for neigh_forward_grat

 bridge/link.c            | 14 ++++++++++++++
 bridge/vlan.c            | 18 ++++++++++++++++++
 ip/iplink_bridge_slave.c | 10 ++++++++++
 man/man8/bridge.8        | 25 ++++++++++++++++++++++++-
 man/man8/ip-link.8.in    | 10 ++++++++++
 5 files changed, 76 insertions(+), 1 deletion(-)

-- 
2.51.0


             reply	other threads:[~2026-05-17  8:25 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-17  8:24 Danielle Ratson [this message]
2026-05-17  8:25 ` [PATCH iproute2-next 1/2] iplink: bridge_slave: Add support for neigh_forward_grat Danielle Ratson
2026-05-17 14:09   ` Nikolay Aleksandrov
2026-05-17  8:25 ` [PATCH iproute2-next 2/2] bridge: vlan: " Danielle Ratson
2026-05-17 14:10   ` Nikolay Aleksandrov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260517082501.899009-1-danieller@nvidia.com \
    --to=danieller@nvidia.com \
    --cc=dsahern@kernel.org \
    --cc=idosch@nvidia.com \
    --cc=netdev@vger.kernel.org \
    --cc=petrm@nvidia.com \
    --cc=razor@blackwall.org \
    --cc=stephen@networkplumber.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox