From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by dpdk.org (Postfix) with ESMTP id 9FD401B018; Wed, 24 Jan 2018 09:14:52 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Jan 2018 00:14:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,406,1511856000"; d="scan'208";a="24290478" Received: from dpdk26.sh.intel.com ([10.67.110.152]) by fmsmga004.fm.intel.com with ESMTP; 24 Jan 2018 00:14:51 -0800 From: Wenzhuo Lu To: dev@dpdk.org Cc: Wenzhuo Lu , stable@dpdk.org Date: Wed, 24 Jan 2018 16:16:52 +0800 Message-Id: <1516781813-50818-4-git-send-email-wenzhuo.lu@intel.com> X-Mailer: git-send-email 1.9.3 In-Reply-To: <1516781813-50818-1-git-send-email-wenzhuo.lu@intel.com> References: <1516757925-3746-1-git-send-email-wenzhuo.lu@intel.com> <1516781813-50818-1-git-send-email-wenzhuo.lu@intel.com> Subject: [dpdk-dev] [PATCH v2 3/4] net/e1000: fix VF RX queue interrupt enabling 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: , X-List-Received-Date: Wed, 24 Jan 2018 08:14:53 -0000 When using UIO, after enabling the interrupt to get the PF message, VF RX queue interrupt is not working. It's expected, as UIO doesn't support multiple interrupt. So, PMD should not try to enable RX queue interrupt. Then APP can know the RX queue interrupt is not enabled and only choose the polling mode. Fixes: 316f4f1adc2e ("net/igb: support VF mailbox interrupt for link up/down") CC: stable@dpdk.org Signed-off-by: Wenzhuo Lu --- drivers/net/e1000/igb_ethdev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c index 077e094..15347df 100644 --- a/drivers/net/e1000/igb_ethdev.c +++ b/drivers/net/e1000/igb_ethdev.c @@ -3295,7 +3295,8 @@ static int eth_igbvf_link_update(struct e1000_hw *hw) } /* check and configure queue intr-vector mapping */ - if (dev->data->dev_conf.intr_conf.rxq != 0) { + if (rte_intr_cap_multiple(intr_handle) && + dev->data->dev_conf.intr_conf.rxq) { intr_vector = dev->data->nb_rx_queues; ret = rte_intr_efd_enable(intr_handle, intr_vector); if (ret) -- 1.9.3