Subject: [PATCH net v4 0/3] bonding: 802.3ad: fix no transmission of LACPDUs

From: Jonathan Toppins <[email-masked]>
Date: Thu, 18 Aug 2022 10:41:09 -0400

Configuring a bond in a specific order can leave the bond in a state
where it never transmits LACPDUs.

The first patch adds some kselftest infrastructure and the reproducer
that demonstrates the problem. The second patch fixes the issue. The
new third patch makes ad_ticks_per_sec a static const and removes the
passing of this variable via the stack.

v4:
 * rebased to latest net/master
 * removed if check around bond_3ad_initialize function contents
 * created a new patch that makes ad_ticks_per_sec a static const
v3:
 * rebased to latest net/master
 * addressed comment from Hangbin

Jonathan Toppins (3):
  selftests: include bonding tests into the kselftest infra
  bonding: 802.3ad: fix no transmission of LACPDUs
  bonding: 3ad: make ad_ticks_per_sec a const

 MAINTAINERS                                   |  1 +
 drivers/net/bonding/bond_3ad.c                | 40 ++++-----
 drivers/net/bonding/bond_main.c               |  2 +-
 include/net/bond_3ad.h                        |  2 +-
 tools/testing/selftests/Makefile              |  1 +
 .../selftests/drivers/net/bonding/Makefile    |  6 ++
 .../net/bonding/bond-break-lacpdu-tx.sh       | 81 +++++++++++++++++++
 .../selftests/drivers/net/bonding/config      |  1 +
 .../selftests/drivers/net/bonding/settings    |  1 +
 9 files changed, 108 insertions(+), 27 deletions(-)
 create mode 100644 tools/testing/selftests/drivers/net/bonding/Makefile
 create mode 100755 tools/testing/selftests/drivers/net/bonding/bond-break-lacpdu-tx.sh
 create mode 100644 tools/testing/selftests/drivers/net/bonding/config
 create mode 100644 tools/testing/selftests/drivers/net/bonding/settings

-- 
2.31.1