]> git.hungrycats.org Git - linux/commit
bonding: 3ad: add lacp_strict configuration knob
authorLouis Scalbert <louis.scalbert@6wind.com>
Wed, 3 Jun 2026 15:03:28 +0000 (17:03 +0200)
committerJakub Kicinski <kuba@kernel.org>
Wed, 10 Jun 2026 14:53:26 +0000 (07:53 -0700)
commit32b0b8953343eaceaa816a9ead3b6bb66355c64e
tree92f6c0d87ec67532667c545a27ff6bdd76335ad6
parent363037983cc503eb0b5a5c0ab80bf1434cfd168a
bonding: 3ad: add lacp_strict configuration knob

When an 802.3ad (LACP) bonding interface has no slaves in the
collecting/distributing state, the bonding master still reports
carrier as up as long as at least 'min_links' slaves have carrier.

In this situation, only one slave is effectively used for TX/RX,
while traffic received on other slaves is dropped. Upper-layer
daemons therefore consider the interface operational, even though
traffic may be blackholed if the lack of LACP negotiation means
the partner is not ready to deal with traffic.

Introduce a configuration knob to control this behavior. It allows
the bonding master to assert carrier only when at least 'min_links'
slaves are in Collecting_Distributing state.

The default mode preserves the existing behavior. This patch only
introduces the knob; its behavior is implemented in the subsequent
commit.

Fixes: 655f8919d549 ("bonding: add min links parameter to 802.3ad")
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
Acked-by: Jay Vosburgh <jv@jvosburgh.net>
Link: https://patch.msgid.link/20260603150331.1919611-4-louis.scalbert@6wind.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Documentation/netlink/specs/rt-link.yaml
Documentation/networking/bonding.rst
drivers/net/bonding/bond_main.c
drivers/net/bonding/bond_netlink.c
drivers/net/bonding/bond_options.c
include/net/bond_options.h
include/net/bonding.h
include/uapi/linux/if_link.h
tools/include/uapi/linux/if_link.h