The check for receive queue fd in flow_isolate is incorrect.
If queue has not been setup then fd will be -1 not 0.

Signed-off-by: Stephen Hemminger <step...@networkplumber.org>
Acked-by: Ferruh Yigit <ferruh.yi...@amd.com>
---
 drivers/net/tap/tap_flow.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/tap/tap_flow.c b/drivers/net/tap/tap_flow.c
index fa50fe45d7..79cd6a12ca 100644
--- a/drivers/net/tap/tap_flow.c
+++ b/drivers/net/tap/tap_flow.c
@@ -1595,7 +1595,7 @@ tap_flow_isolate(struct rte_eth_dev *dev,
         * If netdevice is there, setup appropriate flow rules immediately.
         * Otherwise it will be set when bringing up the netdevice (tun_alloc).
         */
-       if (!process_private->rxq_fds[0])
+       if (process_private->rxq_fds[0] == -1)
                return 0;
        if (set) {
                struct rte_flow *remote_flow;
-- 
2.43.0

Reply via email to