mbox series

[PATCHv5,net,0/3] bond: fix xfrm offload issues

Message ID 20250307031903.223973-1-liuhangbin@gmail.com (mailing list archive)
Headers show
Series bond: fix xfrm offload issues | expand

Message

Hangbin Liu March 7, 2025, 3:19 a.m. UTC
The first patch fixes the incorrect locks using in bond driver.
The second patch fixes the xfrm offload feature during setup active-backup
mode. The third patch add a ipsec offload testing.

v5: use list_for_each_entry_safe() when del item in list (Nikolay Aleksandrov)
    do not call spin_lock_bh in sleep function xdo_dev_state_free (Nikolay Aleksandrov)
    set xso.real_dev = NULL to avoid __xfrm_state_delete() is called in parallel()  (Cosmin Ratiu)
    remove spin lock in bond_ipsec_add_sa_all() as it doesn't resolve the race condition.
v4: hold xs->lock for bond_ipsec_{del, add}_sa_all (Cosmin Ratiu)
    use the defer helpers in lib.sh for selftest (Petr Machata)
v3: move the ipsec deletion to bond_ipsec_free_sa (Cosmin Ratiu)
v2: do not turn carrier on if bond change link failed (Nikolay Aleksandrov)
    move the mutex lock to a work queue (Cosmin Ratiu)

Hangbin Liu (3):
  bonding: fix calling sleeping function in spin lock and some race
    conditions
  bonding: fix xfrm offload feature setup on active-backup mode
  selftests: bonding: add ipsec offload test

 drivers/net/bonding/bond_main.c               |  71 +++++---
 drivers/net/bonding/bond_netlink.c            |  16 +-
 include/net/bonding.h                         |   1 +
 .../selftests/drivers/net/bonding/Makefile    |   3 +-
 .../drivers/net/bonding/bond_ipsec_offload.sh | 154 ++++++++++++++++++
 .../selftests/drivers/net/bonding/config      |   4 +
 6 files changed, 222 insertions(+), 27 deletions(-)
 create mode 100755 tools/testing/selftests/drivers/net/bonding/bond_ipsec_offload.sh