|
|
Subscribe / Log in / New account

idpf: add flow steering support

From:  Ahmed Zaki <ahmed.zaki-AT-intel.com>
To:  intel-wired-lan-AT-lists.osuosl.org
Subject:  [PATCH iwl-next v5 0/3] idpf: add flow steering support
Date:  Wed, 23 Apr 2025 13:27:02 -0600
Message-ID:  <20250423192705.1648119-1-ahmed.zaki@intel.com>
Cc:  netdev-AT-vger.kernel.org, ahmed.zaki-AT-intel.com, sridhar.samudrala-AT-intel.com, aleksandr.loktionov-AT-intel.com, aleksander.lobakin-AT-intel.com, dinesh.kumar-AT-intel.com, anthony.l.nguyen-AT-intel.com, przemyslaw.kitszel-AT-intel.com, andrew+netdev-AT-lunn.ch, davem-AT-davemloft.net, edumazet-AT-google.com, kuba-AT-kernel.org, pabeni-AT-redhat.com, almasrymina-AT-google.com, willemb-AT-google.com, pmenzel-AT-molgen.mpg.de
Archive-link:  Article

Add basic flow steering. For now, we support IPv4 and TCP/UDP only.

Patch 1 renames "enum virtchnl2_cap_rss" to a more generic "enum 
virtchnl2_flow_types" that can be used with RSS and flow steering.

Patch 2 adds the required flow steering virtchnl2 OP codes and patch 3
adds the required flow steering ethtool ntuple ops to the idpf driver.
---
v5:
    - Use u32 instead of u16 for num_fsteer_fltrs (patch 3).
    - Pass OP codes to idpf_add_del_fsteer_filters() (patch 3).
    - Use u32 instead of u16 for fltr->q_index (patch 3).
    - Use ternary operator in idpf_add_flow_steer() (patch 3).

v4: - https://lore.kernel.org/netdev/20250417221239.1390721-1-a...
    - Fix some conflicts in patch 2 (after PTP series).

v3: - https://lore.kernel.org/netdev/20250409205655.1039865-1-a...
    - Fix sparse errors in patch 3 (Tony).

v2: - https://lore.kernel.org/netdev/20250407191017.944214-1-ah...
    - Rename "enum virtchnl2_cap_rss" to virtchnl2_flow_types in
      a separate patch (Patch 1).
    - Change comments of freed BIT(6, 13) in patch 2 (Tony).
    - Remove extra lines before VIRTCHNL2_CHECK_STRUCT_LEN (this makes
      checkpatch complaints, but Tony believes this is preferred.
    - Expand commit of patch 3 (Sridhar).
    - Fix lkp build error (patch 3).
    - Move 'include "idpf_virtchnl.h"' from idpf.h to idpf_ethtool.c
      (patch 3) (Olek).
    - Expand the cover letter text (Olek).
    - Fix kdocs warnings.

v1:
    - https://lore.kernel.org/netdev/20250324134939.253647-1-ah...

Ahmed Zaki (2):
  virtchnl2: rename enum virtchnl2_cap_rss
  idpf: add flow steering support

Sudheer Mogilappagari (1):
  virtchnl2: add flow steering support

 drivers/net/ethernet/intel/idpf/idpf.h        |  33 +-
 .../net/ethernet/intel/idpf/idpf_ethtool.c    | 298 +++++++++++++++++-
 drivers/net/ethernet/intel/idpf/idpf_lib.c    |   5 +
 .../net/ethernet/intel/idpf/idpf_virtchnl.c   | 124 +++++++-
 .../net/ethernet/intel/idpf/idpf_virtchnl.h   |   6 +
 drivers/net/ethernet/intel/idpf/virtchnl2.h   | 238 ++++++++++++--
 6 files changed, 660 insertions(+), 44 deletions(-)

-- 
2.43.0




Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds