From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49882) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVaTe-0004Eq-5P for qemu-devel@nongnu.org; Wed, 11 Mar 2015 02:50:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YVaTd-00064f-AB for qemu-devel@nongnu.org; Wed, 11 Mar 2015 02:50:46 -0400 Received: from mx1.redhat.com ([209.132.183.28]:49603) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YVaTc-00064X-Ma for qemu-devel@nongnu.org; Wed, 11 Mar 2015 02:50:45 -0400 Date: Wed, 11 Mar 2015 07:50:41 +0100 From: "Michael S. Tsirkin" Message-ID: <20150311074938-mutt-send-email-mst@redhat.com> References: <1426053572-21326-1-git-send-email-rusty@rustcorp.com.au> <20150311061935.GA13037@redhat.com> <20150311064747.GF1437@ad.nay.redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150311064747.GF1437@ad.nay.redhat.com> Subject: Re: [Qemu-devel] [PATCH 0/2] virtio len fixes for qemu. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Fam Zheng Cc: Rusty Russell , QEMU Developers , stefanha@redhat.com On Wed, Mar 11, 2015 at 02:47:47PM +0800, Fam Zheng wrote: > On Wed, 03/11 07:19, Michael S. Tsirkin wrote: > > On Wed, Mar 11, 2015 at 04:29:30PM +1030, Rusty Russell wrote: > > > The virtio 'used' ring describes descriptors which have been used. It > > > also says how many bytes have been written to the ring. For some cases, > > > this value is ignored by Linux guests, thus errors have not been noticed. > > > I was working on increasing the checking in Linux when I noticed this > > > behaviour. > > > > > > The first patch changes the 'len' formal parameter name to 'len_written' to > > > make the API clearer, and adds an assert(). The second fixes block writes. > > > > > > Cheers, > > > Rusty. > > > PS. It's based on MST's virtio-1.0 tree, but should be easily ported. > > > > Thanks, this applies to current master without issues. > > However, I think it's best to apply patch 2, then patch 1, > > to avoid triggering errors when bisecting. > > I'm seeing a make check failure. If this is a false alarm, the test should be > fixed too. Yea, I'm also now thinking we need a spec clarification on this one, and some testing with non linux drivers before jumping to changing hosts and guests. > --- > > qemu-system-x86_64: /var/tmp/patchew-test/git/hw/virtio/virtio.c:254: virtqueue_fill: Assertion `len_written <= tot_wlen' failed. > Broken pipe > GTester: last random seed: R02Se642bf29179ebe0c4a92eb02cc488dd8 > [vmxnet3][WR][vmxnet3_peer_has_vnet_hdr]: Peer has no virtio extension. Task offloads will be emulated. > make: *** [check-qtest-x86_64] Error 1