History

Merge tag 'mlx5-updates-2022-05-02' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux

Saeed Mahameed says: ==================== mlx5-updates-2022-05-02 1) Trivial Misc updates to mlx5 driver 2) From Mark Bloch: Flow steering, general steering refactoring/cleaning An issue with flow steering deletion flow (when creating a rule without dests) turned out to be easy to fix but during the fix some issue with the flow steering creation/deletion flows have been found. The following patch series tries to fix long standing issues with flow steering code and hopefully preventing silly future bugs. A) Fix an issue where a proper dest type wasn't assigned. B) Refactor and fix dests enums values, refactor deletion function and do proper bookkeeping of dests. C) Change mlx5_del_flow_rules() to delete rules when there are no no more rules attached associated with an FTE. D) Don't call hard coded deletion function but use the node's defined one. E) Add a WARN_ON() to catch future bugs when an FTE with dests is deleted. * tag 'mlx5-updates-2022-05-02' of git://git.kernel.org/pub/scm/linux/kernel/git/saeed/linux: net/mlx5: fs, an FTE should have no dests when deleted net/mlx5: fs, call the deletion function of the node net/mlx5: fs, delete the FTE when there are no rules attached to it net/mlx5: fs, do proper bookkeeping for forward destinations net/mlx5: fs, add unused destination type net/mlx5: fs, jump to exit point and don't fall through net/mlx5: fs, refactor software deletion rule net/mlx5: fs, split software and IFC flow destination definitions net/mlx5e: TC, set proper dest type net/mlx5e: Remove unused mlx5e_dcbnl_build_rep_netdev function net/mlx5e: Drop error CQE handling from the XSK RX handler net/mlx5: Print initializing field in case of timeout net/mlx5: Delete redundant default assignment of runtime devlink params net/mlx5: Remove useless kfree net/mlx5: use kvfree() for kvzalloc() in mlx5_ct_fs_smfs_matcher_create ====================

Paolo Abeni committed 4 years ago

Commit 2b68abf2 parents f4f1fd7 3a09fae19 files · +109 −90Browse files

Showing the changes to include (2 of 19 files). Show all

Unified · Split

2 files
  1. include/linux/mlx5/fs.h +12 −0
  2. include/linux/mlx5/mlx5_ifc.h +6 −10
include/linux/mlx5/fs.h+12−0
@@ -40,6 +40,18 @@ · 39 unmodified lines
40 40
41#define MLX5_SET_CFG(p, f, v) MLX5_SET(create_flow_group_in, p, f, v)41#define MLX5_SET_CFG(p, f, v) MLX5_SET(create_flow_group_in, p, f, v)
42 42
43enum mlx5_flow_destination_type {
44 MLX5_FLOW_DESTINATION_TYPE_NONE,
45 MLX5_FLOW_DESTINATION_TYPE_VPORT,
46 MLX5_FLOW_DESTINATION_TYPE_FLOW_TABLE,
47 MLX5_FLOW_DESTINATION_TYPE_TIR,
48 MLX5_FLOW_DESTINATION_TYPE_FLOW_SAMPLER,
49 MLX5_FLOW_DESTINATION_TYPE_UPLINK,
50 MLX5_FLOW_DESTINATION_TYPE_PORT,
51 MLX5_FLOW_DESTINATION_TYPE_COUNTER,
52 MLX5_FLOW_DESTINATION_TYPE_FLOW_TABLE_NUM,
53};
54
43enum {55enum {
44 MLX5_FLOW_CONTEXT_ACTION_FWD_NEXT_PRIO = 1 << 16,56 MLX5_FLOW_CONTEXT_ACTION_FWD_NEXT_PRIO = 1 << 16,
45 MLX5_FLOW_CONTEXT_ACTION_ENCRYPT = 1 << 17,57 MLX5_FLOW_CONTEXT_ACTION_ENCRYPT = 1 << 17,
include/linux/mlx5/mlx5_ifc.h+6−10
@@ -1806,16 +1806,12 @@ struct mlx5_ifc_cmd_hca_cap_2_bits { · 1805 unmodified lines
1806 u8 reserved_at_c0[0x740];1806 u8 reserved_at_c0[0x740];
1807};1807};
1808 1808
1809enum mlx5_flow_destination_type {1809enum mlx5_ifc_flow_destination_type {
1810 MLX5_FLOW_DESTINATION_TYPE_VPORT = 0x0,1810 MLX5_IFC_FLOW_DESTINATION_TYPE_VPORT = 0x0,
1811 MLX5_FLOW_DESTINATION_TYPE_FLOW_TABLE = 0x1,1811 MLX5_IFC_FLOW_DESTINATION_TYPE_FLOW_TABLE = 0x1,
1812 MLX5_FLOW_DESTINATION_TYPE_TIR = 0x2,1812 MLX5_IFC_FLOW_DESTINATION_TYPE_TIR = 0x2,
1813 MLX5_FLOW_DESTINATION_TYPE_FLOW_SAMPLER = 0x6,1813 MLX5_IFC_FLOW_DESTINATION_TYPE_FLOW_SAMPLER = 0x6,
1814 MLX5_FLOW_DESTINATION_TYPE_UPLINK = 0x8,1814 MLX5_IFC_FLOW_DESTINATION_TYPE_UPLINK = 0x8,
1815
1816 MLX5_FLOW_DESTINATION_TYPE_PORT = 0x99,
1817 MLX5_FLOW_DESTINATION_TYPE_COUNTER = 0x100,
1818 MLX5_FLOW_DESTINATION_TYPE_FLOW_TABLE_NUM = 0x101,
1819};1815};
1820 1816
1821enum mlx5_flow_table_miss_action {1817enum mlx5_flow_table_miss_action {