net/mlx5e: Add support for offloading traffic from uplink to uplink
authorEli Cohen <eli@mellanox.com>
Thu, 13 Feb 2020 12:05:14 +0000 (14:05 +0200)
committerSaeed Mahameed <saeedm@mellanox.com>
Wed, 18 Mar 2020 02:41:37 +0000 (19:41 -0700)
commit249ccc3c95bd1bca17406b5b3d0474fd67220931
treea93adc6275f9bfa3f9f11be715db2ed6cf319068
parentd8a2034f152a99a476c8d444456fbe652da8cfd5
net/mlx5e: Add support for offloading traffic from uplink to uplink

Termination tables change the direction of a packet in hw from RX to SX
pipeline. Use that to offload hairpin flows received from uplink and
sent back to uplink.

Currently termination tables are used for pushing VLAN to packets
received from uplink and targeting a VF. Extend the implementation to
allow forwarding packets to uplink. These packets can either be
encapsulated or not.

In case encapsulation is needed before forwarding, move the reformat
object to the termination table as required.

Extend the hash table key to include tunnel information for the sake of
reusing reformat objects.

Signed-off-by: Eli Cohen <eli@mellanox.com>
Reviewed-by: Oz Shlomo <ozsh@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c