From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yuanhan Liu Subject: Re: [PATCH] net/virtio: fix fail to configure rxq interrupt Date: Wed, 19 Jul 2017 19:08:45 +0800 Message-ID: <20170719110845.GX11626@yliu-home> References: <1500434303-12975-1-git-send-email-jiayu.hu@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev@dpdk.org, lei.a.yao@intel.com, stable@dpdk.org To: Jiayu Hu , "Tan, Jianfeng" Return-path: Received: from mail-pg0-f65.google.com (mail-pg0-f65.google.com [74.125.83.65]) by dpdk.org (Postfix) with ESMTP id 068FE374C for ; Wed, 19 Jul 2017 13:08:52 +0200 (CEST) Received: by mail-pg0-f65.google.com with SMTP id z1so6552688pgs.0 for ; Wed, 19 Jul 2017 04:08:52 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1500434303-12975-1-git-send-email-jiayu.hu@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Wed, Jul 19, 2017 at 11:18:23AM +0800, Jiayu Hu wrote: > When use rte_eth_dev_configure() to enable rx queue interrupt for virtio > devices, virtio_configure_intr() isn't called to set up the interrupt > environment, which causes rx queue interrupt setup failed. This patch is > to fix this issue. Hmm, how was this supposed to work in the begining when this feature was introduced? Jianfeng? --yliu > > Fixes: 26b683b4f7d0 ("net/virtio: setup Rx queue interrupts") > Cc: stable@dpdk.org > > Signed-off-by: Jiayu Hu > --- > drivers/net/virtio/virtio_ethdev.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c > index 00a3122..66656ed 100644 > --- a/drivers/net/virtio/virtio_ethdev.c > +++ b/drivers/net/virtio/virtio_ethdev.c > @@ -1688,6 +1688,13 @@ virtio_dev_configure(struct rte_eth_dev *dev) > return -ENOTSUP; > } > > + if (dev->data->dev_conf.intr_conf.rxq) { > + if (virtio_configure_intr(dev) < 0) { > + PMD_DRV_LOG(ERR, "failed to configure interrupt"); > + return -ENOTSUP; > + } > + } > + > if (dev->data->dev_flags & RTE_ETH_DEV_INTR_LSC) > /* Enable vector (0) for Link State Intrerrupt */ > if (VTPCI_OPS(hw)->set_config_irq(hw, 0) == > -- > 2.7.4