net/mlx5e: SHAMPO, Increase timeout to improve latency
authorDragos Tatulea <dtatulea@nvidia.com>
Thu, 8 Aug 2024 14:41:03 +0000 (17:41 +0300)
committerJakub Kicinski <kuba@kernel.org>
Sat, 10 Aug 2024 05:16:46 +0000 (22:16 -0700)
commitab6013a59b4d0947fda409c29426dc904959e632
treec056ffc2777fb6da25fcdafb56028a1e9e5fe5ce
parentc31fe2b5095d8c84562ce90db07600f7e9f318df
net/mlx5e: SHAMPO, Increase timeout to improve latency

During latency tests (netperf TCP_RR) a 30% degradation of HW GRO vs SW
GRO was observed. This is due to SHAMPO triggering timeout filler CQEs
instead of delivering the CQE for the packet.

Having a short timeout for SHAMPO doesn't bring any benefits as it is
the driver that does the merging, not the hardware. On the contrary, it
can have a negative impact: additional filler CQEs are generated due to
the timeout. As there is no way to disable this timeout, this change
sets it to the maximum value.

Instead of using the packet_merge.timeout parameter which is also used
for LRO, set the value directly when filling in the rest of the SHAMPO
parameters in mlx5e_build_rq_param().

Fixes: 99be56171fa9 ("net/mlx5e: SHAMPO, Re-enable HW-GRO")
Signed-off-by: Dragos Tatulea <dtatulea@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Link: https://patch.msgid.link/20240808144107.2095424-3-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/en.h
drivers/net/ethernet/mellanox/mlx5/core/en/params.c
drivers/net/ethernet/mellanox/mlx5/core/en/params.h
drivers/net/ethernet/mellanox/mlx5/core/en_main.c