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 B72D2CFA0 for ; Thu, 27 Apr 2017 10:15:41 +0200 (CEST) Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Apr 2017 01:15:40 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.37,257,1488873600"; d="scan'208";a="94414444" Received: from yliu-dev.sh.intel.com (HELO yliu-dev) ([10.239.67.162]) by fmsmga005.fm.intel.com with ESMTP; 27 Apr 2017 01:15:39 -0700 Date: Thu, 27 Apr 2017 16:12:03 +0800 From: Yuanhan Liu To: Zhiyong Yang Cc: dev@dpdk.org, maxime.coquelin@redhat.com, ciara.loftus@intel.com Message-ID: <20170427081203.GK11512@yliu-dev.sh.intel.com> References: <1493274893-40764-1-git-send-email-zhiyong.yang@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1493274893-40764-1-git-send-email-zhiyong.yang@intel.com> User-Agent: Mutt/1.5.23 (2014-03-12) Subject: Re: [dpdk-dev] [PATCH] vhost: fix MQ fails to startup 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, 27 Apr 2017 08:15:42 -0000 On Thu, Apr 27, 2017 at 02:34:53PM +0800, Zhiyong Yang wrote: > vhost since dpdk17.02 + qemu2.7 and above will cause failures of > new connection when negotiating to set MQ. (one queue pair works > well).Because there exist some bugs in qemu code when introducing > VHOST_USER_PROTOCOL_F_REPLY_ACK to qemu. when dealing with the vhost > message VHOST_USER_SET_MEM_TABLE for the second time, qemu indeed > doesn't send the messge (The message needs to be sent only once)but > still will be waiting for dpdk's reply ack, then, qemu is always > freezing. DPDK code works in the right way. But the feature > VHOST_USER_PROTOCOL_F_REPLY_ACK has to be disabled by default at the > dpdk side in order to avoid the feature support of DPDK + qemu at > the same time. if doing like that, MQ can works well. ... > Once Qemu bugs > have been fixed and upstreamed, we can enable it. As I have said, we should not enable it again, because there are already few buggy QEMU releases out. We should make sure DPDK also works well with them. > Fixes: 73c8f9f69c6c("vhost: introduce reply ack feature") That commit does nothing wrong. It's QEMU being buggy. That said, I will not add such fixline. I will also use "workaround" instead of "fix" in the title. Also, this patch should be backported to stable release. So, you should add: Cc: stable@dpdk.org Besides, please reformat you commit log a bit. For example, add space after punctuation, use paragraph as possible, etc. > > Reported-by: Loftus, Ciara No "," is allowed. > Signed-off-by: Zhiyong Yang > --- > lib/librte_vhost/vhost_user.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/lib/librte_vhost/vhost_user.h b/lib/librte_vhost/vhost_user.h > index 2ba22db..a3d2900 100644 > --- a/lib/librte_vhost/vhost_user.h > +++ b/lib/librte_vhost/vhost_user.h > @@ -52,7 +52,7 @@ > #define VHOST_USER_PROTOCOL_FEATURES ((1ULL << VHOST_USER_PROTOCOL_F_MQ) | \ > (1ULL << VHOST_USER_PROTOCOL_F_LOG_SHMFD) |\ > (1ULL << VHOST_USER_PROTOCOL_F_RARP) | \ > - (1ULL << VHOST_USER_PROTOCOL_F_REPLY_ACK) | \ > + (0ULL << VHOST_USER_PROTOCOL_F_REPLY_ACK) | \ > (1ULL << VHOST_USER_PROTOCOL_F_NET_MTU)) I think you might want to add a simple comment here, something like /* * disable REPLY_ACK feature to workaround the buggy QEMU implementation. * Proved buggy QEMU includes v2.7 - v2.9. */ So, please send v2? --yliu