Vector used for rx mapping is different if WB_ON_ITR
is supported. The mapping table need to be updated.

Fixes: d6bde6b5eae9 ("net/avf: enable Rx interrupt")

Signed-off-by: Jingjing Wu <jingjing...@intel.com>
Cc: sta...@dpdk.org
---
 drivers/net/avf/avf_ethdev.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/avf/avf_ethdev.c b/drivers/net/avf/avf_ethdev.c
index a1ae3a2..db0eda4 100644
--- a/drivers/net/avf/avf_ethdev.c
+++ b/drivers/net/avf/avf_ethdev.c
@@ -339,13 +339,13 @@ static int avf_config_rx_queues_irqs(struct rte_eth_dev 
*dev,
                AVF_WRITE_FLUSH(hw);
                /* map all queues to the same interrupt */
                for (i = 0; i < dev->data->nb_rx_queues; i++)
-                       vf->rxq_map[0] |= 1 << i;
+                       vf->rxq_map[vf->msix_base] |= 1 << i;
        } else {
                if (!rte_intr_allow_others(intr_handle)) {
                        vf->nb_msix = 1;
                        vf->msix_base = AVF_MISC_VEC_ID;
                        for (i = 0; i < dev->data->nb_rx_queues; i++) {
-                               vf->rxq_map[0] |= 1 << i;
+                               vf->rxq_map[AVF_MISC_VEC_ID] |= 1 << i;
                                intr_handle->intr_vec[i] = AVF_MISC_VEC_ID;
                        }
                        PMD_DRV_LOG(DEBUG,
-- 
2.4.11

Reply via email to