From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id A20DCA2E1B for ; Thu, 5 Sep 2019 11:38:53 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id CED721EE57; Thu, 5 Sep 2019 11:38:51 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id C50DB1C219; Thu, 5 Sep 2019 11:38:49 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Sep 2019 02:38:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,470,1559545200"; d="scan'208";a="266967668" Received: from intel.sh.intel.com ([10.239.255.129]) by orsmga001.jf.intel.com with ESMTP; 05 Sep 2019 02:38:47 -0700 From: "lunyuan.cui" To: dev@dpdk.org Cc: Wenzhuo Lu , "lunyuan.cui" , stable@dpdk.org Date: Thu, 5 Sep 2019 03:22:40 +0000 Message-Id: <20190905032240.23239-1-lunyuanx.cui@intel.com> X-Mailer: git-send-email 2.17.1 Subject: [dpdk-dev] [PATCH] net/iavf: fix multi-queue Rx interrupt for VF X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 --- 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