[PATCH net-next v2 0/4] net: move netdev_compute_master_upper_features to ndo_set_features

From: Hangbin Liu

Date: Thu Mar 12 2026 - 23:03:59 EST


Currently, master devices (bonding, bridge, team) manually call
netdev_compute_master_upper_features() scattered throughout their port
add/remove operations. This approach requires each driver to remember
to update features at the right times and leads to code duplication.

The series moves netdev_compute_master_upper_features() to callback
ndo_set_features so that the offload compute could automatically
invoked during feature updates when upper/lower device relationships
change. This centralizes the feature computation flow and removes the
burden from individual drivers.

---
Changes in v2:
- Fix macsec Security Entity uninitialized issue (Sabrina Dubroca)
- Tested with macsec-offload-sh, rtnetlink-sh, link-netns-py, all pssed
- Link to v1: https://lore.kernel.org/r/20260310-offload_compute-v1-0-3df79c09ea65@xxxxxxxxx

---
Hangbin Liu (4):
net: use ndo_set_features to set offload features for bonding/bridge/team
macsec: move netdev_upper_dev_link() after macsec_changelink_common()
failover: use ndo_set_features for failover offload compute
net: no need to disable LRO specifically

drivers/net/bonding/bond_main.c | 14 +++++----
drivers/net/macsec.c | 23 +++++++-------
drivers/net/net_failover.c | 67 +++++------------------------------------
drivers/net/team/team_core.c | 15 ++++-----
include/net/net_failover.h | 7 -----
net/8021q/vlan.c | 2 --
net/bridge/br_device.c | 7 +++++
net/bridge/br_if.c | 6 ----
net/core/dev.c | 8 +++--
net/hsr/hsr_slave.c | 1 -
10 files changed, 49 insertions(+), 101 deletions(-)
---
base-commit: 06fc88a6973fa6203c7c0cd3f5cef9d3405928ca
change-id: 20260310-offload_compute-4c0bafa2e022

Best regards,
--
Hangbin Liu <liuhangbin@xxxxxxxxx>