net/mlx5: fix Rx queue flags on destroying flow
authorBing Zhao <bingz@mellanox.com>
Fri, 17 Apr 2020 07:23:30 +0000 (15:23 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 5 May 2020 13:54:26 +0000 (15:54 +0200)
After inserting an offload flow, the software flag information will
be updated based on the flow. When receiving a packet on this queue,
the hardware packet type bits and the software flag will be used
together to get the inner packet and tunnel header type (if any) from
the global packet type table.
When destroying a flow, the corresponding Rx queue flag needs to be
updated. All flags should be cleared when closing a device because
all control flows and application flows are invalid anymore.
Such behavior is missed when implementing the non-cached mode.

Fixes: 8db7e3b69822 ("net/mlx5: change operations for non-cached flows")

Signed-off-by: Bing Zhao <bingz@mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
drivers/net/mlx5/mlx5_flow.c

index cba1f23..3d256a2 100644 (file)
@@ -4687,6 +4687,7 @@ void
 mlx5_flow_stop_default(struct rte_eth_dev *dev)
 {
        flow_mreg_del_default_copy_action(dev);
+       flow_rxq_flags_clear(dev);
 }
 
 /**