From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id DE8E1137C; Fri, 4 Nov 2016 15:27:15 +0100 (CET) Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga105.fm.intel.com with ESMTP; 04 Nov 2016 07:27:14 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.31,443,1473145200"; d="scan'208";a="27800150" Received: from yliu-dev.sh.intel.com (HELO yliu-dev) ([10.239.67.162]) by orsmga004.jf.intel.com with ESMTP; 04 Nov 2016 07:27:13 -0700 Date: Fri, 4 Nov 2016 22:28:07 +0800 From: Yuanhan Liu To: Maxime Coquelin Cc: dev@dpdk.org, stable@dpdk.org, Ilya Maximets Message-ID: <20161104142807.GB12283@yliu-dev.sh.intel.com> References: <1478189400-14606-1-git-send-email-yuanhan.liu@linux.intel.com> <1478189400-14606-2-git-send-email-yuanhan.liu@linux.intel.com> <915489cd-7e1a-9a0c-ab9d-780f6103501b@redhat.com> <20161104020005.GV16751@yliu-dev.sh.intel.com> <4dec2204-4da9-da61-fbbf-d17748f2f9bc@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4dec2204-4da9-da61-fbbf-d17748f2f9bc@redhat.com> User-Agent: Mutt/1.5.23 (2014-03-12) Subject: Re: [dpdk-dev] [PATCH 1/8] net/virtio: revert "virtio: fix restart" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 04 Nov 2016 14:27:16 -0000 On Fri, Nov 04, 2016 at 09:09:22AM +0100, Maxime Coquelin wrote: > > > On 11/04/2016 03:00 AM, Yuanhan Liu wrote: > >On Thu, Nov 03, 2016 at 09:36:52PM +0100, Maxime Coquelin wrote: > >>Hi Yuanhan, > >> > >>On 11/03/2016 05:09 PM, Yuanhan Liu wrote: > >>>This reverts commit 9a0615af7746 ("virtio: fix restart"); conflict is > >>>manually addressed. > >>> > >>>Kyle reported an issue with above commit > >>> > >>> qemu-kvm: Guest moved used index from 5 to 1 > >>> > >>>with following steps, > >>> > >>> 1) Start my virtio interfaces > >>> 2) Send some traffic into/out of the interfaces > >>> 3) Stop the interfaces > >>> 4) Start the interfaces > >>> 5) Send some more traffic > >>> > >>>And here are some quotes from Kyle's analysis, > >>> > >>> Prior to the patch, if an interface were stopped then started, without > >>> restarting the application, the queues would be left as-is, because > >>> hw->started would be set to 1. Now, calling stop sets hw->started to 0, > >>> which means the next call to start will "touch the queues". This is the > >>> unintended side-effect that causes the problem. > >> > >>Maybe a good idea to explain what is the problem the revert aims to fix. > > > >It aims to fix the issue, by "not touching the queues" on restart. > > > >>It does not seem to be clearly stated in the commit message. > > > >I was thinking the quote from Kyle is enough. How about following supplement: > > > > We should not touch the queues once the init is done, otherwise, the > > vring state of virtio PMD driver and vhost-user would be inconsistent, > > leading some issue like above. > > > > Thus this patch is reverted. > > > >Better now? > Yes, this is much clearer from my PoV. Fixed, and series applied to dpdk-next-virtio. Thanks for the review! --yliu