common/sfc_efx/base: support alternative MAE match fields
authorIvan Malov <ivan.malov@oktetlabs.ru>
Tue, 1 Dec 2020 07:30:10 +0000 (10:30 +0300)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 8 Jan 2021 15:03:04 +0000 (16:03 +0100)
commit429ed2f9ec7a0a0c48cbc90d7ab25185a36c1a85
tree18f594ce84b617e5b3f05d30dca6ee17f814e92d
parenta0f0b03c817ce14e9dc337c8d9d8770760173dfe
common/sfc_efx/base: support alternative MAE match fields

If MAE slice is configured without conntrack support, outer
rules must match on IP SRC/DST. This isn't reported clearly
by the FW because IPv4 and IPv6 have separate SRC/DST pairs.
The FW reports status ALWAYS for all these four fields, and
having an all-zeros mask for either field prevents the spec
from being certified by the existing spec validation method.

Extend the spec validation to take the "alternative" fields
into account so that legitimate specs don't get turned down.

Fixes: ed15d7f8e064 ("common/sfc_efx/base: validate and compare outer match specs")
Cc: stable@dpdk.org
Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
Reviewed-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Reviewed-by: Andy Moreton <amoreton@xilinx.com>
drivers/common/sfc_efx/base/efx_mae.c