net/iavf: fix multi-queue Rx interrupt for VF
diff mbox series

Message ID 20190905032240.23239-1-lunyuanx.cui@intel.com
State Superseded, archived
Delegated to: xiaolong ye
Headers show
Series
  • net/iavf: fix multi-queue Rx interrupt for VF
Related show

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/iol-dpdk_compile_ovs success Compile Testing PASS
ci/iol-dpdk_compile success Compile Testing PASS
ci/iol-dpdk_compile_spdk success Compile Testing PASS
ci/intel-Performance success Performance Testing PASS
ci/mellanox-Performance success Performance Testing PASS

Commit Message

Cui, LunyuanX Sept. 5, 2019, 3:22 a.m. UTC
The original issue was that the last queue could not
be mapped to the interrupt vector, so the last queue
could not receive the package in the interrupt mode.
This patch fix the issue.

Fixes: d6bde6b5ea ("net/avf: enable Rx interrupt")
Cc: stable@dpdk.org

Signed-off-by: lunyuan.cui <lunyuanx.cui@intel.com>
---
 drivers/net/iavf/iavf_ethdev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Xiaolong Ye Sept. 5, 2019, 12:16 p.m. UTC | #1
On 09/05, lunyuan.cui wrote:
>The original issue was that the last queue could not
>be mapped to the interrupt vector, so the last queue
>could not receive the package in the interrupt mode.
>This patch fix the issue.

s/fix/fixes

>
>Fixes: d6bde6b5ea ("net/avf: enable Rx interrupt")

The convention is to have the 12 characters of commit SHA in Fixes tag.

>Cc: stable@dpdk.org
>
>Signed-off-by: lunyuan.cui <lunyuanx.cui@intel.com>

Signature format should be 

Signed-off-by: Lunyuan Cui <lunyuanx.cui@intel.com>

Thanks,
Xiaolong

>---
> drivers/net/iavf/iavf_ethdev.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c
>index 8f3907378..6559bfa1f 100644
>--- a/drivers/net/iavf/iavf_ethdev.c
>+++ b/drivers/net/iavf/iavf_ethdev.c
>@@ -360,7 +360,7 @@ static int iavf_config_rx_queues_irqs(struct rte_eth_dev *dev,
> 			for (i = 0; i < dev->data->nb_rx_queues; i++) {
> 				vf->rxq_map[vec] |= 1 << i;
> 				intr_handle->intr_vec[i] = vec++;
>-				if (vec >= vf->nb_msix)
>+				if (vec > vf->nb_msix)
> 					vec = IAVF_RX_VEC_START;
> 			}
> 			PMD_DRV_LOG(DEBUG,
>-- 
>2.17.1
>

Patch
diff mbox series

diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c
index 8f3907378..6559bfa1f 100644
--- a/drivers/net/iavf/iavf_ethdev.c
+++ b/drivers/net/iavf/iavf_ethdev.c
@@ -360,7 +360,7 @@  static int iavf_config_rx_queues_irqs(struct rte_eth_dev *dev,
 			for (i = 0; i < dev->data->nb_rx_queues; i++) {
 				vf->rxq_map[vec] |= 1 << i;
 				intr_handle->intr_vec[i] = vec++;
-				if (vec >= vf->nb_msix)
+				if (vec > vf->nb_msix)
 					vec = IAVF_RX_VEC_START;
 			}
 			PMD_DRV_LOG(DEBUG,