mirror of
https://github.com/openvswitch/ovs
synced 2025-08-30 22:05:19 +00:00
netdev-offload-dpdk: Support vxlan encap offload with load actions.
Struct match has the tunnel values/masks in
match->flow.tunnel/match->wc.masks.tunnel.
Load actions such as load:0xa566c10->NXM_NX_TUN_IPV4_DST[],
load:0xbba->NXM_NX_TUN_ID[] are utilizing the tunnel masks fields,
but those should not be used for matching.
Offloading fails if masks is not clear. Clear it if no tunnel used.
Fixes: e8a2b5bf92
("netdev-dpdk: implement flow offload with rte flow")
Reviewed-by: Eli Britstein <elibr@mellanox.com>
Reviewed-by: Gaetan Rivet <gaetanr@mellanox.com>
Acked-by: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>
Tested-by: Emma Finn <emma.finn@intel.com>
Signed-off-by: Lei Wang <leiw@mellanox.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
This commit is contained in:
@@ -682,6 +682,10 @@ parse_flow_match(struct flow_patterns *patterns,
|
||||
|
||||
consumed_masks = &match->wc.masks;
|
||||
|
||||
if (!flow_tnl_dst_is_set(&match->flow.tunnel)) {
|
||||
memset(&consumed_masks->tunnel, 0, sizeof consumed_masks->tunnel);
|
||||
}
|
||||
|
||||
memset(&consumed_masks->in_port, 0, sizeof consumed_masks->in_port);
|
||||
/* recirc id must be zero. */
|
||||
if (match->wc.masks.recirc_id & match->flow.recirc_id) {
|
||||
|
Reference in New Issue
Block a user