From 1051b8db945d712f8de197ec3af3c46f6f16af54 Mon Sep 17 00:00:00 2001 From: Jeff Guo Date: Wed, 27 May 2020 15:16:50 +0800 Subject: [PATCH] net/iavf: fix flow uninit When closing VF device, the process of shutdown adminq should be after the process of uninit the flow, since the VF might still need to use the adminq to uninit flow. Fixes: 9e03acd726cf ("net/iavf: fix flow access") Fixes: ff2d0c345c3b ("net/iavf: support generic flow API") Cc: stable@dpdk.org Signed-off-by: Jeff Guo Acked-by: Xiaolong Ye --- drivers/net/iavf/iavf_ethdev.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c index e09efffd18..2b1066b0ad 100644 --- a/drivers/net/iavf/iavf_ethdev.c +++ b/drivers/net/iavf/iavf_ethdev.c @@ -1432,6 +1432,7 @@ iavf_dev_close(struct rte_eth_dev *dev) iavf_dev_stop(dev); iavf_flow_flush(dev, NULL); + iavf_flow_uninit(adapter); iavf_shutdown_adminq(hw); /* disable uio intr before callback unregister */ rte_intr_disable(intr_handle); @@ -1440,8 +1441,6 @@ iavf_dev_close(struct rte_eth_dev *dev) rte_intr_callback_unregister(intr_handle, iavf_dev_interrupt_handler, dev); iavf_disable_irq0(hw); - - iavf_flow_uninit(adapter); } static int -- 2.20.1