All of lore.kernel.org
 help / color / mirror / Atom feed
* [pull request][net-next 00/15] mlx5 updates 2022-08-22
@ 2022-08-23  5:55 Saeed Mahameed
  2022-08-23  5:55 ` [net-next 01/15] net/mlx5e: Introduce flow steering API Saeed Mahameed
                   ` (14 more replies)
  0 siblings, 15 replies; 19+ messages in thread
From: Saeed Mahameed @ 2022-08-23  5:55 UTC (permalink / raw)
  To: David S. Miller, Jakub Kicinski, Paolo Abeni, Eric Dumazet
  Cc: Saeed Mahameed, netdev, Tariq Toukan

From: Saeed Mahameed <saeedm@nvidia.com>

This series adds two updates to mlx5 driver:

Roi Dayan adds the support for tunnel offloads for SFs.
Lama continues to decouple mlx5 auxiliary sub-modules from the main
mlx5_priv (the netdev private data).
 
For more information please see tag log below.

Please pull and let me know if there is any problem.

Merge conflict:
When merged with latest mlx5 net PR [1], the following conflict will pop-up:

++<<<<<<< HEAD
 +err_free_tc:
 +      mlx5e_fs_tc_free(fs);
 +err_free_fs:
 +      kvfree(fs);
++||||||| 4c2d0b039c5c
++err_free_fs:
++      kvfree(fs);
++=======
+ 
++>>>>>>> submit/net-mlx5
  err_free_vlan:
        mlx5e_fs_vlan_free(fs);
+ err_free_fs:
+       kvfree(fs);


To resolve simply use this hunk:

err_free_tc:                                                                  
      mlx5e_fs_tc_free(fs);                                                   
err_free_vlan:                                                                
        mlx5e_fs_vlan_free(fs);                                                 
err_free_fs:                                                                  
       kvfree(fs);             

[1] https://patchwork.kernel.org/project/netdevbpf/patch/20220822195917.216025-1-saeed@kernel.org/

Thanks,
Saeed.


The following changes since commit 97d29b9231c73d8c2c1c5b6add6d1f679bb579f9:

  Merge branch '10GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/next-queue (2022-08-22 20:24:45 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux.git tags/mlx5-updates-2022-08-22

for you to fetch changes up to 72e0bcd1563602168391ea52157bdd82e6d7875a:

  net/mlx5: TC, Add support for SF tunnel offload (2022-08-22 22:44:26 -0700)

----------------------------------------------------------------
mlx5-updates-2022-08-22

Roi Dayan Says:
===============
Add support for SF tunnel offload

Mlx5 driver only supports VF tunnel offload.
To add support for SF tunnel offload the driver needs to:
1. Add send-to-vport metadata matching rules like done for VFs.
2. Set an indirect table for SF vport, same as VF vport.

info smaller sub functions for better maintainability.

rules from esw init phase to representor load phase.
SFs could be created after esw initialized and thus the send-to-vport
meta rules would not be created for those SFs.
By moving the creation of the rules to representor load phase
we ensure creating the rules also for SFs created later.

===============

Lama Kayal Says:
================
Make flow steering API loosely coupled from mlx5e_priv, in a manner to
introduce more readable and maintainable modules.

Make TC's private, let mlx5e_flow_steering struct be dynamically allocated,
and introduce its API to maintain the code via setters and getters
instead of publicly exposing it.

Introduce flow steering debug macros to provide an elegant finish to the
decoupled flow steering API, where errors related to flow steering shall
be reported via them.

All flow steering related files will drop any coupling to mlx5e_priv,
instead they will get the relevant members as input. Among these,
fs_tt_redirect, fs_tc, and arfs.
================

----------------------------------------------------------------
Jianbo Liu (1):
      net/mlx5: E-Switch, Add default drop rule for unmatched packets

Lama Kayal (11):
      net/mlx5e: Introduce flow steering API
      net/mlx5e: Decouple fs_tt_redirect from en.h
      net/mlx5e: Decouple fs_tcp from en.h
      net/mlx5e: Drop priv argument of ptp function in en_fs
      net/mlx5e: Convert ethtool_steering member of flow_steering struct to pointer
      net/mlx5e: Directly get flow_steering struct as input when init/cleanup ethtool steering
      net/mlx5e: Separate ethtool_steering from fs.h and make private
      net/mlx5e: Introduce flow steering debug macros
      net/mlx5e: Make flow steering arfs independent of priv
      net/mlx5e: Make all ttc functions of en_fs get fs struct as argument
      net/mlx5e: Completely eliminate priv from fs.h

Roi Dayan (3):
      net/mlx5: E-Switch, Split creating fdb tables into smaller chunks
      net/mlx5: E-Switch, Move send to vport meta rule creation
      net/mlx5: TC, Add support for SF tunnel offload

 drivers/net/ethernet/mellanox/mlx5/core/en.h       |   5 -
 drivers/net/ethernet/mellanox/mlx5/core/en/fs.h    | 158 +++----
 .../ethernet/mellanox/mlx5/core/en/fs_ethtool.h    |  29 ++
 .../mellanox/mlx5/core/en/fs_tt_redirect.c         | 188 ++++----
 .../mellanox/mlx5/core/en/fs_tt_redirect.h         |  13 +-
 drivers/net/ethernet/mellanox/mlx5/core/en/ptp.c   |  44 +-
 drivers/net/ethernet/mellanox/mlx5/core/en/ptp.h   |   6 +-
 .../ethernet/mellanox/mlx5/core/en/tc/act/goto.c   |   3 +-
 drivers/net/ethernet/mellanox/mlx5/core/en/trap.c  |   8 +-
 .../ethernet/mellanox/mlx5/core/en_accel/fs_tcp.c  | 111 ++---
 .../ethernet/mellanox/mlx5/core/en_accel/fs_tcp.h  |  14 +-
 .../mellanox/mlx5/core/en_accel/ipsec_fs.c         |  15 +-
 .../ethernet/mellanox/mlx5/core/en_accel/ktls.c    |   8 +-
 .../ethernet/mellanox/mlx5/core/en_accel/ktls_rx.c |   2 +-
 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c  | 141 +++---
 .../net/ethernet/mellanox/mlx5/core/en_ethtool.c   |   5 +-
 drivers/net/ethernet/mellanox/mlx5/core/en_fs.c    | 436 ++++++++++++------
 .../ethernet/mellanox/mlx5/core/en_fs_ethtool.c    |  76 +++-
 drivers/net/ethernet/mellanox/mlx5/core/en_main.c  |  42 +-
 drivers/net/ethernet/mellanox/mlx5/core/en_rep.c   |  77 +++-
 drivers/net/ethernet/mellanox/mlx5/core/en_rep.h   |   9 +-
 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c    |  85 ++--
 drivers/net/ethernet/mellanox/mlx5/core/en_tc.h    |   1 +
 .../ethernet/mellanox/mlx5/core/esw/indir_table.c  |   6 +-
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c  |   1 -
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.h  |   7 +-
 .../ethernet/mellanox/mlx5/core/eswitch_offloads.c | 495 +++++++++++++--------
 .../ethernet/mellanox/mlx5/core/ipoib/ethtool.c    |   1 +
 .../net/ethernet/mellanox/mlx5/core/ipoib/ipoib.c  |  25 +-
 29 files changed, 1246 insertions(+), 765 deletions(-)
 create mode 100644 drivers/net/ethernet/mellanox/mlx5/core/en/fs_ethtool.h

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2022-08-28  6:37 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-23  5:55 [pull request][net-next 00/15] mlx5 updates 2022-08-22 Saeed Mahameed
2022-08-23  5:55 ` [net-next 01/15] net/mlx5e: Introduce flow steering API Saeed Mahameed
2022-08-24 12:30   ` patchwork-bot+netdevbpf
2022-08-23  5:55 ` [net-next 02/15] net/mlx5e: Decouple fs_tt_redirect from en.h Saeed Mahameed
2022-08-23  5:55 ` [net-next 03/15] net/mlx5e: Decouple fs_tcp " Saeed Mahameed
2022-08-23  5:55 ` [net-next 04/15] net/mlx5e: Drop priv argument of ptp function in en_fs Saeed Mahameed
2022-08-23  5:55 ` [net-next 05/15] net/mlx5e: Convert ethtool_steering member of flow_steering struct to pointer Saeed Mahameed
2022-08-23  5:55 ` [net-next 06/15] net/mlx5e: Directly get flow_steering struct as input when init/cleanup ethtool steering Saeed Mahameed
2022-08-23  5:55 ` [net-next 07/15] net/mlx5e: Separate ethtool_steering from fs.h and make private Saeed Mahameed
2022-08-23  5:55 ` [net-next 08/15] net/mlx5e: Introduce flow steering debug macros Saeed Mahameed
2022-08-23  5:55 ` [net-next 09/15] net/mlx5e: Make flow steering arfs independent of priv Saeed Mahameed
2022-08-23  5:55 ` [net-next 10/15] net/mlx5e: Make all ttc functions of en_fs get fs struct as argument Saeed Mahameed
2022-08-23  5:55 ` [net-next 11/15] net/mlx5e: Completely eliminate priv from fs.h Saeed Mahameed
2022-08-23  5:55 ` [net-next 12/15] net/mlx5: E-Switch, Add default drop rule for unmatched packets Saeed Mahameed
2022-08-23  5:55 ` [net-next 13/15] net/mlx5: E-Switch, Split creating fdb tables into smaller chunks Saeed Mahameed
2022-08-23  5:55 ` [net-next 14/15] net/mlx5: E-Switch, Move send to vport meta rule creation Saeed Mahameed
2022-08-24 14:43   ` Alexander Lobakin
2022-08-28  6:37     ` Roi Dayan
2022-08-23  5:55 ` [net-next 15/15] net/mlx5: TC, Add support for SF tunnel offload Saeed Mahameed

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.