android_kernel_msm-6.1_noth.../include/linux/mlx5
Vlad Buslov 8e404fefa5 net/mlx5e: Match recirculated packet miss in slow table using reg_c1
Previous patch in series that implements stack devices RX path implements
indirect table rules that match on tunnel VNI. After such rule is created
all tunnel traffic is recirculated to root table. However, recirculated
packet might not match on any rules installed in the table (for example,
when IP traffic follows ARP traffic). In that case packets appear on
representor of tunnel endpoint VF instead being redirected to the VF
itself.

Extend slow table with additional flow group that matches on reg_c0 (source
port value set by indirect tables implemented by previous patch in series)
and reg_c1 (special 0xFFF mark). When creating offloads fdb tables, install
one rule per VF vport to match on recirculated miss packets and redirect
them to appropriate VF vport. Modify indirect tables code to also rewrite
reg_c1 with special 0xFFF mark.

Implementation reuses reg_c1 tunnel id bits. This is safe to do because
recirculated packets are always matched before decapsulation.

Signed-off-by: Vlad Buslov <vladbu@nvidia.com>
Signed-off-by: Dmytro Linkin <dlinkin@nvidia.com>
Reviewed-by: Roi Dayan <roid@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
2021-02-05 20:53:37 -08: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/mlx5e: Add trap entity to ETH driver 2021-01-27 19:53:53 -08:00
doorbell.h
driver.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-01-28 17:09:31 -08:00
eq.h net/mlx5: Use event mask based on device capabilities 2019-07-03 20:55:45 +03:00
eswitch.h net/mlx5e: Match recirculated packet miss in slow table using reg_c1 2021-02-05 20:53:37 -08:00
fs.h net/mlx5: Treat host PF vport as other (non eswitch manager) vport 2020-11-26 18:45:03 -08:00
fs_helpers.h
mlx5_ifc.h net/mlx5e: Support HTB offload 2021-01-22 20:41:29 -08:00
mlx5_ifc_fpga.h net/mlx5: fix spelling mistake "reserverd" -> "reserved" 2020-02-18 15:44:07 +02:00
mlx5_ifc_vdpa.h vdpa/mlx5: Make hardware definitions visible to all mlx5 devices 2020-12-04 14:46:56 +02:00
port.h RDMA/mlx5: Delete duplicated mlx5_ptys_width enum 2020-09-17 19:33:03 +03:00
qp.h net/mlx5e: IPsec: Add TX steering rule per IPsec state 2020-10-12 15:37:45 -07: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/mlx5: Update transobj.c new cmd interface 2020-04-23 21:42:16 +03:00
vport.h net/mlx5: Constify mac address pointer 2020-06-22 15:29:19 -07:00