linux-brain/drivers/net/ethernet/mellanox/mlx5/core/en
Maxim Mikityanskiy ffde058199 net/mlx5e: Prohibit inner indir TIRs in IPoIB
[ Upstream commit 9c43f3865c2a03be104f1c1d5e9129c2a2bdba88 ]

TIR's rx_hash_field_selector_inner can be enabled only when
tunneled_offload_en = 1. tunneled_offload_en is filled according to the
tunneled_offload_en field in struct mlx5e_params, which is false in the
IPoIB profile. On the other hand, the IPoIB profile passes inner_ttc =
true to mlx5e_create_indirect_tirs, which potentially allows the latter
function to attempt to create inner indirect TIRs without having
tunneled_offload_en set.

This commit prohibits this behavior by passing inner_ttc = false to
mlx5e_create_indirect_tirs. The latter function won't attempt to create
inner indirect TIRs.

As inner indirect TIRs are not created in the IPoIB profile (this commit
blocks it explicitly, and even before they would have failed to be
created), the call to mlx5e_create_inner_ttc_table in
mlx5i_create_flow_steering is a no-op and can be removed.

Fixes: 46dc933cee ("net/mlx5e: Provide explicit directive if to create inner indirect tirs")
Fixes: 458821c72b ("net/mlx5e: IPoIB, Add inner TTC table to IPoIB flow steering")
Signed-off-by: Maxim Mikityanskiy <maximmi@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-09-15 09:47:32 +02:00
..
xsk net/mlx5e: Fix repeated XSK usage on one channel 2020-06-17 16:40:32 +02:00
fs.h net/mlx5e: Prohibit inner indir TIRs in IPoIB 2021-09-15 09:47:32 +02:00
health.c net/mlx5e: Fix crash in recovery flow without devlink reporter 2020-02-28 17:22:28 +01:00
health.h net/mlx5e: Do not recover from a non-fatal syndrome 2020-04-01 11:01:50 +02:00
hv_vhca_stats.c net/mlx5e: Replace kfree with kvfree when free vhca stats 2019-10-29 16:27:18 -07:00
hv_vhca_stats.h net/mlx5e: Add mlx5e HV VHCA stats agent 2019-08-22 00:25:12 -07:00
monitor_stats.c net/mlx5e: Add missing static function annotation 2019-02-19 14:15:03 -08:00
monitor_stats.h
params.c net/mlx5e: Allow XSK frames smaller than a page 2019-08-31 01:08:26 +02:00
params.h net/mlx5e: Allow XSK frames smaller than a page 2019-08-31 01:08:26 +02:00
port.c net/mlx5e: Fix 50G per lane indication 2020-07-16 08:16:41 +02:00
port.h net/mlx5e: Fix 50G per lane indication 2020-07-16 08:16:41 +02:00
port_buffer.c net/mlx5e: Query global pause state before setting prio2buffer 2019-12-18 16:08:38 +01:00
port_buffer.h
reporter_rx.c net/mlx5e: Fix ICOSQ recovery flow with Striding RQ 2020-04-01 11:01:50 +02:00
reporter_tx.c net/mlx5e: Add cq info to tx reporter diagnose 2019-08-20 13:08:16 -07:00
tc_tun.c net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup 2019-12-18 16:08:42 +01:00
tc_tun.h net: flow_offload: rename tc_cls_flower_offload to flow_cls_offload 2019-07-09 14:38:51 -07:00
tc_tun_geneve.c net/mlx5e: Don't match on Geneve options in case option masks are all zero 2021-03-30 14:35:24 +02:00
tc_tun_gre.c net: flow_offload: rename tc_cls_flower_offload to flow_cls_offload 2019-07-09 14:38:51 -07:00
tc_tun_vxlan.c net: flow_offload: rename tc_cls_flower_offload to flow_cls_offload 2019-07-09 14:38:51 -07:00
txrx.h net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset 2020-04-01 11:01:49 +02:00
xdp.c mlx5e: modify driver for handling offsets 2019-08-31 01:08:26 +02:00
xdp.h net/mlx5e: Fix concurrency issues between config flow and XSK 2020-01-12 12:21:41 +01:00