[dpdk-dev] net/avf: fix AVF traffic blocked issue

Message ID 1526556254-54764-1-git-send-email-xiaoyun.li@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Helin Zhang
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Li, Xiaoyun May 17, 2018, 11:24 a.m. UTC
When resetting ports, traffic will be blocked. There is a mistake when
getting hw info at avf_dev_stop. This causes the device stop without
stopping queues. This patch fixes this issue.

Fixes: 69dd4c3d0898 ("net/avf: enable queue and device")
Cc: stable@dpdk.org

Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
---
 drivers/net/avf/avf_ethdev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Zhang, Helin May 17, 2018, 2:54 p.m. UTC | #1
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Xiaoyun Li
> Sent: Thursday, May 17, 2018 7:24 PM
> To: Wu, Jingjing; Lu, Wenzhuo
> Cc: dev@dpdk.org; Li, Xiaoyun; stable@dpdk.org
> Subject: [dpdk-dev] [PATCH] net/avf: fix AVF traffic blocked issue
> 
> When resetting ports, traffic will be blocked. There is a mistake when getting
> hw info at avf_dev_stop. This causes the device stop without stopping queues.
> This patch fixes this issue.
> 
> Fixes: 69dd4c3d0898 ("net/avf: enable queue and device")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
  
Zhang, Helin May 17, 2018, 2:56 p.m. UTC | #2
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Zhang, Helin
> Sent: Thursday, May 17, 2018 10:54 PM
> To: Li, Xiaoyun; Wu, Jingjing; Lu, Wenzhuo
> Cc: dev@dpdk.org; Li, Xiaoyun; stable@dpdk.org
> Subject: Re: [dpdk-dev] [PATCH] net/avf: fix AVF traffic blocked issue
> 
> 
> 
> > -----Original Message-----
> > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Xiaoyun Li
> > Sent: Thursday, May 17, 2018 7:24 PM
> > To: Wu, Jingjing; Lu, Wenzhuo
> > Cc: dev@dpdk.org; Li, Xiaoyun; stable@dpdk.org
> > Subject: [dpdk-dev] [PATCH] net/avf: fix AVF traffic blocked issue
> >
> > When resetting ports, traffic will be blocked. There is a mistake when
> > getting hw info at avf_dev_stop. This causes the device stop without
> stopping queues.
> > This patch fixes this issue.
> >
> > Fixes: 69dd4c3d0898 ("net/avf: enable queue and device")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
> Acked-by: Helin Zhang <helin.zhang@intel.com>
Applied to dpdk-next-net-intel, thanks!

/Helin
  
Jingjing Wu May 18, 2018, 4:29 a.m. UTC | #3
> -----Original Message-----
> From: Li, Xiaoyun
> Sent: Thursday, May 17, 2018 7:24 PM
> To: Wu, Jingjing <jingjing.wu@intel.com>; Lu, Wenzhuo <wenzhuo.lu@intel.com>
> Cc: dev@dpdk.org; Li, Xiaoyun <xiaoyun.li@intel.com>; stable@dpdk.org
> Subject: [PATCH] net/avf: fix AVF traffic blocked issue
> 
> When resetting ports, traffic will be blocked. There is a mistake when
> getting hw info at avf_dev_stop. This causes the device stop without
> stopping queues. This patch fixes this issue.
> 
> Fixes: 69dd4c3d0898 ("net/avf: enable queue and device")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Xiaoyun Li <xiaoyun.li@intel.com>
> ---
>  drivers/net/avf/avf_ethdev.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/net/avf/avf_ethdev.c b/drivers/net/avf/avf_ethdev.c
> index 0ef1f17..ad83a57 100644
> --- a/drivers/net/avf/avf_ethdev.c
> +++ b/drivers/net/avf/avf_ethdev.c
> @@ -475,7 +475,7 @@ avf_dev_stop(struct rte_eth_dev *dev)
>  {
>  	struct avf_adapter *adapter =
>  		AVF_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
> -	struct avf_hw *hw = AVF_DEV_PRIVATE_TO_HW(dev);
> +	struct avf_hw *hw = AVF_DEV_PRIVATE_TO_HW(dev->data->dev_private);
>  	struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
>  	struct rte_intr_handle *intr_handle = dev->intr_handle;
>  	int ret, i;
> --
> 2.7.4

Acked-by: Jingjing Wu <jingjing.wu@intel.com>

Thanks, Xiaoyun!
  

Patch

diff --git a/drivers/net/avf/avf_ethdev.c b/drivers/net/avf/avf_ethdev.c
index 0ef1f17..ad83a57 100644
--- a/drivers/net/avf/avf_ethdev.c
+++ b/drivers/net/avf/avf_ethdev.c
@@ -475,7 +475,7 @@  avf_dev_stop(struct rte_eth_dev *dev)
 {
 	struct avf_adapter *adapter =
 		AVF_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
-	struct avf_hw *hw = AVF_DEV_PRIVATE_TO_HW(dev);
+	struct avf_hw *hw = AVF_DEV_PRIVATE_TO_HW(dev->data->dev_private);
 	struct rte_pci_device *pci_dev = RTE_ETH_DEV_TO_PCI(dev);
 	struct rte_intr_handle *intr_handle = dev->intr_handle;
 	int ret, i;