The rule is incorrectly parsed to ntuple filter when setting the pattern likes: flow create ... ipv4 / udp dst is ... / raw ... / end actions ... / end
It causes the rule to be created successfully, but not works. Fix it to parse for FDIR rules. Fixes: b7eeecb17556 ("net/txgbe: parse n-tuple filter") Cc: sta...@dpdk.org Signed-off-by: Jiawen Wu <jiawe...@trustnetic.com> --- drivers/net/txgbe/txgbe_flow.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/txgbe/txgbe_flow.c b/drivers/net/txgbe/txgbe_flow.c index 1d854d0767..269f0b54e3 100644 --- a/drivers/net/txgbe/txgbe_flow.c +++ b/drivers/net/txgbe/txgbe_flow.c @@ -361,7 +361,7 @@ cons_parse_ntuple_filter(const struct rte_flow_attr *attr, if (item->type != RTE_FLOW_ITEM_TYPE_END && (!item->spec && !item->mask)) { - goto action; + goto item_end; } /* get the TCP/UDP/SCTP info */ @@ -490,6 +490,7 @@ cons_parse_ntuple_filter(const struct rte_flow_attr *attr, goto action; } +item_end: /* check if the next not void item is END */ item = next_no_void_pattern(pattern, item); if (item->type != RTE_FLOW_ITEM_TYPE_END) { -- 2.48.1