Re: [PATCHv6 net-next 0/4] net: common feature compute for upper interface

Jiri Pirko
2025-10-17T09:58:25Z

Fri, Oct 17, 2025 at 05:41:51AM +0200, liuhangbin@gmail.com wrote:
>Some high-level virtual drivers need to compute features from their
>lower devices, but each currently has its own implementation and may
>miss some feature computations. This patch set introduces a common function
>to compute features for such devices.
>
>Currently, bonding, team, and bridge have been updated to use the new
>helper.

Looks good to me.

set-
Reviewed-by: Jiri Pirko <jiri@nvidia.com>

>
>v6:
> * no update, only rename UPPER_DEV_* to MASTER_UPPER_DEV_* (Jiri Pirko)
>
>v5:
> * rename VIRTUAL_DEV_* to UPPER_DEV_* (Jiri Pirko)
> * use IS_ENABLED() instead of ifdef (Simon Horman)
> * init max_headroom/tailroom (Simon Horman)
> * link: https://lore.kernel.org/netdev/20251016033828.59324-1-liuhangbin@gmail.com
>
>v4:
> * update needed_{headroom, tailroom} in the common helper (Ido Schimmel)
> * remove unneeded err in team (Stanislav Fomichev)
> * remove selftest as `ethtool -k` does not test the dev->*_features. We
> can add back the selftest when there is a good way to test. (Sabrina Dubroca)
> * link: https://lore.kernel.org/netdev/20251014080217.47988-1-liuhangbin@gmail.com
>
>v3:
> a) fix hw_enc_features assign order (Sabrina Dubroca)
> b) set virtual dev feature definition in netdev_features.h (Jakub Kicinski)
> c) remove unneeded err in team_del_slave (Stanislav Fomichev)
> d) remove NETIF_F_HW_ESP test as it needs to be test with GSO pkts (Sabrina Dubroca)
>
>v2:
> a) remove hard_header_len setting. I will set needed_headroom for bond/team
> in a separate patch as bridge has it's own ways. (Ido Schimmel)
> b) Add test file to Makefile, set RET=0 to a proper location. (Ido Schimmel)
>
>Hangbin Liu (4):
> net: add a common function to compute features for upper devices
> bonding: use common function to compute the features
> team: use common function to compute the features
> net: bridge: use common function to compute the features
>
> drivers/net/bonding/bond_main.c | 99 ++-------------------------------
> drivers/net/team/team_core.c | 83 ++-------------------------
> include/linux/netdev_features.h | 18 ++++++
> include/linux/netdevice.h | 1 +
> net/bridge/br_if.c | 22 +-------
> net/core/dev.c | 88 +++++++++++++++++++++++++++++
> 6 files changed, 120 insertions(+), 191 deletions(-)
>
>--
>2.50.1
>