From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47389) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XkEHB-0001qk-B7 for qemu-devel@nongnu.org; Fri, 31 Oct 2014 11:39:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xjsy4-0005Ku-FA for qemu-devel@nongnu.org; Thu, 30 Oct 2014 12:53:08 -0400 Received: from e06smtp13.uk.ibm.com ([195.75.94.109]:56766) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xjsy4-0005Kh-6G for qemu-devel@nongnu.org; Thu, 30 Oct 2014 12:53:00 -0400 Received: from /spool/local by e06smtp13.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 30 Oct 2014 16:52:58 -0000 Received: from b06cxnps3074.portsmouth.uk.ibm.com (d06relay09.portsmouth.uk.ibm.com [9.149.109.194]) by d06dlp01.portsmouth.uk.ibm.com (Postfix) with ESMTP id 5A8A817D8045 for ; Thu, 30 Oct 2014 16:53:00 +0000 (GMT) Received: from d06av08.portsmouth.uk.ibm.com (d06av08.portsmouth.uk.ibm.com [9.149.37.249]) by b06cxnps3074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id s9UGquT713173060 for ; Thu, 30 Oct 2014 16:52:56 GMT Received: from d06av08.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av08.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id s9UGquRb004365 for ; Thu, 30 Oct 2014 10:52:56 -0600 Date: Thu, 30 Oct 2014 17:52:51 +0100 From: Cornelia Huck Message-ID: <20141030175251.4f28d2a8.cornelia.huck@de.ibm.com> In-Reply-To: <20141028044329.GA18689@redhat.com> References: <1412692807-12398-1-git-send-email-cornelia.huck@de.ibm.com> <20141023214158.GA29716@redhat.com> <20141024103839.7162b93f.cornelia.huck@de.ibm.com> <20141028044329.GA18689@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH RFC 00/11] qemu: towards virtio-1 host support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: thuth@linux.vnet.ibm.com, qemu-devel@nongnu.org, kvm@vger.kernel.org, virtualization@lists.linux-foundation.org On Tue, 28 Oct 2014 06:43:29 +0200 "Michael S. Tsirkin" wrote: > On Fri, Oct 24, 2014 at 10:38:39AM +0200, Cornelia Huck wrote: > > On Fri, 24 Oct 2014 00:42:20 +0300 > > "Michael S. Tsirkin" wrote: > > > > > On Tue, Oct 07, 2014 at 04:39:56PM +0200, Cornelia Huck wrote: > > > > This patchset aims to get us some way to implement virtio-1 compliant > > > > and transitional devices in qemu. Branch available at > > > > > > > > git://github.com/cohuck/qemu virtio-1 > > > > > > > > I've mainly focused on: > > > > - endianness handling > > > > - extended feature bits > > > > - virtio-ccw new/changed commands > > > > > > So issues identified so far: > > > > Thanks for taking a look. > > > > > - devices not converted yet should not advertize 1.0 > > > > Neither should an uncoverted transport. So we either can > > - have transport set the bit and rely on devices ->get_features > > callback to mask it out > > (virtio-ccw has to change the calling order for get_features, btw.) > > - have device set the bit and the transport mask it out later. Feels a > > bit weird, as virtio-1 is a transport feature bit. > > > I thought more about it, I think the right thing > would be for unconverted transports to clear > high bits on ack and get features. This should work out of the box with my patches (virtio-pci and virtio-mmio return 0 for high feature bits). > > So bit 32 is set, but not exposed to guests. > In fact at least for PCI, we have a 32 bit field for > features in 0.9 so it's automatic. > Didn't check mmio yet. We still to make sure the bit is not set for unconverted devices, though. But you're probably right that having the device set the bit is less error-prone.