net/mlx5e: TC, Add support for VxLAN GBP encap/decap flows offload
authorGavin Li <gavinl@nvidia.com>
Thu, 16 Mar 2023 07:07:58 +0000 (09:07 +0200)
committerJakub Kicinski <kuba@kernel.org>
Sat, 18 Mar 2023 05:41:16 +0000 (22:41 -0700)
commit6ee44c518159c364e5d30ed85d357fe1d8e2c141
tree8fffcb217738565779cc6d20647e0037217f93ea
parentbc9d003dc48c381763c3a6309bfc5eecf9962b9c
net/mlx5e: TC, Add support for VxLAN GBP encap/decap flows offload

Add HW offloading support for TC flows with VxLAN GBP encap/decap.

Example of encap rule:
tc filter add dev eth0 protocol ip ingress flower \
    action tunnel_key set id 42 vxlan_opts 512 \
    action mirred egress redirect dev vxlan1

Example of decap rule:
tc filter add dev vxlan1 protocol ip ingress flower \
    enc_key_id 42 enc_dst_port 4789 vxlan_opts 1024 \
    action tunnel_key unset action mirred egress redirect dev eth0

Signed-off-by: Gavin Li <gavinl@nvidia.com>
Reviewed-by: Gavi Teitz <gavi@nvidia.com>
Reviewed-by: Roi Dayan <roid@nvidia.com>
Reviewed-by: Maor Dickman <maord@nvidia.com>
Acked-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun_vxlan.c
include/linux/mlx5/device.h
include/linux/mlx5/mlx5_ifc.h