Flows like IP4 / UDP / RAW are not working because after parsing
RTE_FLOW_ITEM_TYPE_RAW item pointer is not advanced. This make whole
parsing fail.
Fixes: f35fec63dde1 ("net/ixgbe: enable flex bytes for generic flow API")
Cc: qi.z.zh...@intel.com
Signed-off-by: Pawel Wodkowski <pawel...@gmail.com>
---
 drivers/net/ixgbe/ixgbe_flow.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/ixgbe/ixgbe_flow.c b/drivers/net/ixgbe/ixgbe_flow.c
index b2a2bfc02..a2cb599b1 100644
--- a/drivers/net/ixgbe/ixgbe_flow.c
+++ b/drivers/net/ixgbe/ixgbe_flow.c
@@ -2251,6 +2251,8 @@ ixgbe_parse_fdir_filter_normal(struct rte_eth_dev *dev,
                        (((uint16_t)raw_spec->pattern[1]) << 8) |
                        raw_spec->pattern[0];
                rule->flex_bytes_offset = raw_spec->offset;
+
+               item = next_no_fuzzy_pattern(pattern, item);
        }
 
        if (item->type != RTE_FLOW_ITEM_TYPE_END) {
-- 
2.17.1

Reply via email to