mirror_ubuntu-kernels/include/linux/mlx5
Maxim Mikityanskiy 26ab7b3845 net/mlx5e: Block LRO if firmware asks for tunneled LRO
This commit does a cleanup in LRO configuration.

LRO is a parameter of an RQ, but its state is changed by modifying a TIR
related to the RQ.

The current status: LRO for tunneled packets is not supported in the
driver, inner TIRs may enable LRO on creation, but LRO status of inner
TIRs isn't changed in mlx5e_modify_tirs_lro(). This is inconsistent, but
as long as the firmware doesn't declare support for tunneled LRO, it
works, because the same RQs are shared between the inner and outer TIRs.

This commit does two fixes:

1. If the firmware has the tunneled LRO capability, LRO is blocked
altogether, because it's not possible to block it for inner TIRs only,
when the same RQs are shared between inner and outer TIRs, and the
driver won't be able to handle tunneled LRO traffic.

2. mlx5e_modify_tirs_lro() is patched to modify LRO state for all TIRs,
including inner ones, because all TIRs related to an RQ should agree on
their LRO state.

Fixes: 7b3722fa9e ("net/mlx5e: Support RSS for GRE tunneled packets")
Signed-off-by: Maxim Mikityanskiy <maximmi@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2021-07-26 09:50:37 -07:00
..
accel.h net/mlx5: Accel, Add core IPsec support for the Connect-X family 2020-07-16 16:36:42 -07:00
cq.h net/mlx5: Avoid RDMA file inclusion in core driver 2020-06-27 13:50:46 -07:00
device.h net/mlx5: mlx5_ifc support for header insert/remove 2021-06-09 18:36:06 -07:00
doorbell.h
driver.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-06-18 19:47:02 -07:00
eq.h net/mlx5: Provide cpumask at EQ creation phase 2021-06-14 20:57:57 -07:00
eswitch.h net/mlx5e: TC: Reserved bit 31 of REG_C1 for IPsec offload 2021-05-27 11:54:36 -07:00
fs_helpers.h
fs.h net/mlx5: Bridge, add offload infrastructure 2021-06-09 18:36:09 -07:00
mlx5_ifc_fpga.h
mlx5_ifc_vdpa.h vdpa/mlx5: Make hardware definitions visible to all mlx5 devices 2020-12-04 14:46:56 +02:00
mlx5_ifc.h net/mlx5e: Block LRO if firmware asks for tunneled LRO 2021-07-26 09:50:37 -07:00
mpfs.h {net,vdpa}/mlx5: Configure interface MAC into mpfs L2 table 2021-05-18 23:01:48 -07:00
port.h net/mlx5: Add support for DSFP module EEPROM dumps 2021-04-11 16:34:56 -07:00
qp.h RDMA/mlx5: Refactor get_ts_format functions to simplify code 2021-06-22 09:35:16 +03:00
rsc_dump.h net/mlx5: Add support in query QP, CQ and MKEY segments 2020-06-23 17:26:10 +03:00
transobj.h net/mlx5e: Fix page reclaim for dead peer hairpin 2021-06-09 17:20:03 -07:00
vport.h net/mlx5: E-Switch, Prepare to return total vports from eswitch struct 2021-04-24 00:58:43 -07:00