From: Jeff Guo Date: Wed, 27 May 2020 07:16:50 +0000 (+0800) Subject: net/iavf: fix flow uninit X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=1051b8db945d712f8de197ec3af3c46f6f16af54;p=dpdk.git 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 --- 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