]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
net/mlx5e: Use termination table for VLAN push actions
authorOz Shlomo <ozsh@mellanox.com>
Thu, 18 Apr 2019 13:45:29 +0000 (16:45 +0300)
committerSaeed Mahameed <saeedm@mellanox.com>
Fri, 31 May 2019 20:04:26 +0000 (13:04 -0700)
commit10caabdaad5ace85577a453da97d1f8d3b944427
treed0145541a231527d2d87edb9909a17d207a72298
parent9272e3df3023aa53256cc53a9e4e62ee715575a7
net/mlx5e: Use termination table for VLAN push actions

HW does not support push VLAN action in the RX direction (packets
arriving from the wire). The FW works around this limitation by haripining
the packet. The hairpin workaround applies only when the push VLAN action
is specified in a termination table, assuring that there are no actions
following the haripin.

Instantiate termination table for push VLAN actions. Re-use identical
terminating tables for increased HW cache efficiency.

Signed-off-by: Oz Shlomo <ozsh@mellanox.com>
Reviewed-by: Paul Blakey <paulb@mellanox.com>
Reviewed-by: Eli Britstein <elibr@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/Makefile
drivers/net/ethernet/mellanox/mlx5/core/eswitch.h
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads_termtbl.c [new file with mode: 0644]