sfc: support TC left-hand-side rules on foreign netdevs
authorEdward Cree <ecree.xilinx@gmail.com>
Mon, 2 Oct 2023 15:44:41 +0000 (16:44 +0100)
committerDavid S. Miller <davem@davemloft.net>
Fri, 6 Oct 2023 10:05:44 +0000 (11:05 +0100)
commitec1dc6c88ce4f4fb541244f22c42e8cd69037d98
tree4077e44db53eb56590d3d53377ef2cf5a08a4aba
parent2a92fccdaca837f65990139207981014970f996c
sfc: support TC left-hand-side rules on foreign netdevs

Allow a tunnel netdevice (such as a vxlan) to offload conntrack lookups,
 in much the same way as efx netdevs.
To ensure this rule does not overlap with other tunnel rules on the same
 sip,dip,dport tuple, register a pseudo encap match of a new type
 (EFX_TC_EM_PSEUDO_OR), which unlike PSEUDO_MASK may only be referenced
 once (because an actual Outer Rule in hardware exists, although its
 fw_id is not recorded in the encap match entry).

Reviewed-by: Pieter Jansen van Vuuren <pieter.jansen-van-vuuren@amd.com>
Signed-off-by: Edward Cree <ecree.xilinx@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/sfc/mae.c
drivers/net/ethernet/sfc/tc.c
drivers/net/ethernet/sfc/tc.h