mbox series

[net-next,00/13] bnxt_en: Add basic ntuple filter support

Message ID 20231221220218.197386-1-michael.chan@broadcom.com (mailing list archive)
Headers show
Series bnxt_en: Add basic ntuple filter support | expand

Message

Michael Chan Dec. 21, 2023, 10:02 p.m. UTC
The current driver only supports ntuple filters added by aRFS.  This
patch series adds basic support for user defined TCP/UDP ntuple filters
added by the user using ethtool.  Many of the patches are refactoring
patches to make the existing code more general to support both aRFS
and user defined filters.  aRFS filters always have the Toeplitz hash
value from the NIC.  A Toepliz hash function is added in patch 5 to
get the same hash value for user defined filters.  The hash is used
to store all ntuple filters in the table and all filters must be
hashed identically using the same function and key.

Michael Chan (12):
  bnxt_en: Refactor bnxt_ntuple_filter structure.
  bnxt_en: Add bnxt_l2_filter hash table.
  bnxt_en: Re-structure the bnxt_ntuple_filter structure.
  bnxt_en: Refactor L2 filter alloc/free firmware commands.
  bnxt_en: Add bnxt_lookup_ntp_filter_from_idx() function
  bnxt_en: Add new BNXT_FLTR_INSERTED flag to bnxt_filter_base struct.
  bnxt_en: Refactor filter insertion logic in bnxt_rx_flow_steer().
  bnxt_en: Refactor the hash table logic for ntuple filters.
  bnxt_en: Refactor ntuple filter removal logic in
    bnxt_cfg_ntp_filters().
  bnxt_en: Add ntuple matching flags to the bnxt_ntuple_filter
    structure.
  bnxt_en: Add support for ntuple filters added from ethtool.
  bnxt_en: Add support for ntuple filter deletion by ethtool.

Pavan Chebbi (1):
  bnxt_en: Add function to calculate Toeplitz hash

 drivers/net/ethernet/broadcom/bnxt/bnxt.c     | 715 +++++++++++++-----
 drivers/net/ethernet/broadcom/bnxt/bnxt.h     |  92 ++-
 .../net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 371 +++++++--
 3 files changed, 932 insertions(+), 246 deletions(-)