From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from proxy.6wind.com (host.76.145.23.62.rev.coltfrance.com [62.23.145.76]) by dpdk.org (Postfix) with ESMTP id 1CDBE2B89; Thu, 7 Dec 2017 15:15:01 +0100 (CET) Received: from core.dev.6wind.com (unknown [10.0.0.1]) by proxy.6wind.com (Postfix) with ESMTPS id 40B1410FA3C; Thu, 7 Dec 2017 15:06:56 +0100 (CET) Received: from [10.16.0.195] (helo=6wind.com) by core.dev.6wind.com with smtp (Exim 4.84_2) (envelope-from ) id 1eMwwm-0000wa-OO; Thu, 07 Dec 2017 15:14:45 +0100 Received: by 6wind.com (sSMTP sendmail emulation); Thu, 07 Dec 2017 15:14:44 +0100 Date: Thu, 7 Dec 2017 15:14:44 +0100 From: Olivier MATZ To: Tiwei Bie Cc: maxime.coquelin@redhat.com, yliu@fridaylinux.org, stephen@networkplumber.org, dev@dpdk.org, stable@dpdk.org, antonio.fischetti@intel.com Message-ID: <20171207141443.msbs6oqmwjav2lpk@glumotte.dev.6wind.com> References: <20170831134015.1383-1-olivier.matz@6wind.com> <20170907121347.16208-1-olivier.matz@6wind.com> <20170907121347.16208-7-olivier.matz@6wind.com> <20171206052528.xmxjxfkkurq7hhsp@debian-xvivbkq> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20171206052528.xmxjxfkkurq7hhsp@debian-xvivbkq> User-Agent: NeoMutt/20170113 (1.7.2) Subject: Re: [dpdk-dev] [PATCH v2 06/10] net/virtio: fix queue setup consistency 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: Thu, 07 Dec 2017 14:15:01 -0000 Hi Tiwei, On Wed, Dec 06, 2017 at 01:25:29PM +0800, Tiwei Bie wrote: > Hi Maxime and Olivier: > > On Thu, Sep 07, 2017 at 02:13:43PM +0200, Olivier Matz wrote: > [...] > > diff --git a/drivers/net/virtio/virtio_ethdev.c b/drivers/net/virtio/virtio_ethdev.c > > index 8eee3ff80..c7888f103 100644 > > --- a/drivers/net/virtio/virtio_ethdev.c > > +++ b/drivers/net/virtio/virtio_ethdev.c > > @@ -1737,6 +1737,19 @@ virtio_dev_start(struct rte_eth_dev *dev) > > struct virtnet_rx *rxvq; > > struct virtnet_tx *txvq __rte_unused; > > struct virtio_hw *hw = dev->data->dev_private; > > + int ret; > > + > > + /* Finish the initialization of the queues */ > > + for (i = 0; i < dev->data->nb_rx_queues; i++) { > > + ret = virtio_dev_rx_queue_setup_finish(dev, i); > > + if (ret < 0) > > + return ret; > > + } > > I'm trying to fix an issue [1] reported by Antonio. And during > the debugging, I found that vector Rx of virtio PMD has been > broken (when doing port stop/start) since below two patches were > applied: > > 25bf7a0b0936 ("vhost: make error handling consistent in Rx path") > -- needed on the Tx side (testpmd/vhost-pmd in below test) > efc83a1e7fc3 ("net/virtio: fix queue setup consistency") > -- needed on the Rx side (testpmd/virtio-user in below test) Just to be sure I understand properly: each of these 2 patches break a different part your test case? I tried to reproduce your test case (the working case first): - on 0c4f909c17 (the commit before the efc83a1e7fc3) - without the patch disabling mergeable Rx No packet is received. Am I doing something wrong? Please see the log: cd /root/dpdk.org git checkout -b test 0c4f909c17 rm -rf build && make config T=x86_64-native-linuxapp-gcc && make -j32 insmod build/kmod/igb_uio.ko echo 1000 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages echo 1000 > /sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages mkdir -p /mnt/huge mount -t hugetlbfs none /mnt/huge # term 1: testpmd/vhost-pmd /root/dpdk.org/build/app/testpmd -l 1,2 \ --socket-mem 512,512 \ --file-prefix=vhost \ --no-pci \ --vdev=net_vhost0,iface=/tmp/socket-0,queues=1 \ -- \ --port-topology=chained \ -i \ --nb-cores=1 # term 2: virtio-user /root/dpdk.org/build/app/testpmd -l 5,6 \ --socket-mem 512,512 \ --file-prefix=virtio-user \ --no-pci \ --vdev=net_virtio_user0,path=/tmp/socket-0 \ -- \ --port-topology=chained \ -i \ --nb-cores=1 \ --disable-hw-vlan \ --txqflags=0xf01 testpmd> set fwd rxonly testpmd> start # back to term1: vhost testpmd> set burst 1 testpmd> set fwd rxonly testpmd> start tx_first 1 testpmd> stop Result on term1: ---------------------- Forward statistics for port 0 ---------------------- RX-packets: 0 RX-dropped: 0 RX-total: 0 TX-packets: 0 TX-dropped: 1 TX-total: 1 ---------------------------------------------------------------------------- +++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++ RX-packets: 0 RX-dropped: 0 RX-total: 0 TX-packets: 0 TX-dropped: 1 TX-total: 1 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Olivier