From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cornelia Huck Subject: Re: [Qemu-devel] [PATCH RFC 07/11] dataplane: allow virtio-1 devices Date: Thu, 30 Oct 2014 10:18:38 +0100 Message-ID: <20141030101838.2ddee2dc.cornelia.huck@de.ibm.com> References: <1412692807-12398-1-git-send-email-cornelia.huck@de.ibm.com> <1412692807-12398-8-git-send-email-cornelia.huck@de.ibm.com> <20141028162254.2a4f2cf4@bahia.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20141028162254.2a4f2cf4@bahia.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: virtualization-bounces@lists.linux-foundation.org Errors-To: virtualization-bounces@lists.linux-foundation.org To: Greg Kurz Cc: thuth@linux.vnet.ibm.com, qemu-devel@nongnu.org, kvm@vger.kernel.org, virtualization@lists.linux-foundation.org List-Id: virtualization@lists.linuxfoundation.org T24gVHVlLCAyOCBPY3QgMjAxNCAxNjoyMjo1NCArMDEwMApHcmVnIEt1cnogPGdrdXJ6QGxpbnV4 LnZuZXQuaWJtLmNvbT4gd3JvdGU6Cgo+IE9uIFR1ZSwgIDcgT2N0IDIwMTQgMTY6NDA6MDMgKzAy MDAKPiBDb3JuZWxpYSBIdWNrIDxjb3JuZWxpYS5odWNrQGRlLmlibS5jb20+IHdyb3RlOgo+IAo+ ID4gSGFuZGxlIGVuZGlhbm5lc3MgY29udmVyc2lvbiBmb3IgdmlydGlvLTEgdmlydHF1ZXVlcyBj b3JyZWN0bHkuCj4gPiAKPiA+IE5vdGUgdGhhdCBkYXRhcGxhbmUgbm93IG5lZWRzIHRvIGJlIGJ1 aWx0IHBlci10YXJnZXQuCj4gPiAKPiAKPiBJdCBhbHNvIGFmZmVjdHMgaHcvdmlydGlvL3ZpcnRp by1wY2kuYzoKPiAKPiBJbiBmaWxlIGluY2x1ZGVkIGZyb20gaW5jbHVkZS9ody92aXJ0aW8vZGF0 YXBsYW5lL3ZyaW5nLmg6MjM6MCwKPiAgICAgICAgICAgICAgICAgIGZyb20gaW5jbHVkZS9ody92 aXJ0aW8vdmlydGlvLXNjc2kuaDoyMSwKPiAgICAgICAgICAgICAgICAgIGZyb20gaHcvdmlydGlv L3ZpcnRpby1wY2kuYzoyNDoKPiBpbmNsdWRlL2h3L3ZpcnRpby92aXJ0aW8tYWNjZXNzLmg6IElu IGZ1bmN0aW9uIOKAmHZpcnRpb19hY2Nlc3NfaXNfYmlnX2VuZGlhbuKAmToKPiBpbmNsdWRlL2h3 L3ZpcnRpby92aXJ0aW8tYWNjZXNzLmg6Mjg6MTU6IGVycm9yOiBhdHRlbXB0IHRvIHVzZSBwb2lz b25lZCAiVEFSR0VUX1dPUkRTX0JJR0VORElBTiIKPiAgI2VsaWYgZGVmaW5lZChUQVJHRVRfV09S RFNfQklHRU5ESUFOKQo+ICAgICAgICAgICAgICAgIF4KPiAKPiBGV0lXIHdoZW4gSSBhZGRlZCBl bmRpYW4gYW1iaXZhbGVudCBzdXBwb3J0IHRvIHZpcnRpbywgSSByZW1lbWJlciAqc29tZSBwZW9w bGUqCj4gZ2V0dGluZyBhbmdyeSBhdCB0aGUgaWRlYSBvZiB0dXJuaW5nIGNvbW1vbiBjb2RlIGlu dG8gcGVyLXRhcmdldC4uLiA6KQoKV2VsbCwgaXQgcHJvYmFibHkgY2FuJ3QgYmUgaGVscGVkIGZv ciBzb21ldGhpbmcgdGhhdCBpcwplbmRpYW4tc2Vuc2l0aXZlIGxpa2UgdmlydGlvIDooIChBbHRo b3VnaCB3ZSBzaG91bGQgdHJ5IHRvIGtlZXAgaXQgYXMKbG9jYWwgYXMgcG9zc2libGUuKQoKPiAK PiBTZWUgY29tbWVudCBiZWxvdy4KPiAKPiA+IFNpZ25lZC1vZmYtYnk6IENvcm5lbGlhIEh1Y2sg PGNvcm5lbGlhLmh1Y2tAZGUuaWJtLmNvbT4KPiA+IC0tLQo+ID4gIGh3L2Jsb2NrL2RhdGFwbGFu ZS92aXJ0aW8tYmxrLmMgICAgIHwgICAgMyArLQo+ID4gIGh3L3Njc2kvdmlydGlvLXNjc2ktZGF0 YXBsYW5lLmMgICAgIHwgICAgMiArLQo+ID4gIGh3L3ZpcnRpby9NYWtlZmlsZS5vYmpzICAgICAg ICAgICAgIHwgICAgMiArLQo+ID4gIGh3L3ZpcnRpby9kYXRhcGxhbmUvTWFrZWZpbGUub2JqcyAg IHwgICAgMiArLQo+ID4gIGh3L3ZpcnRpby9kYXRhcGxhbmUvdnJpbmcuYyAgICAgICAgIHwgICA4 NSArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQo+ID4gIGluY2x1ZGUvaHcvdmly dGlvL2RhdGFwbGFuZS92cmluZy5oIHwgICA2NCArKysrKysrKysrKysrKysrKysrKysrKystLQo+ ID4gIDYgZmlsZXMgY2hhbmdlZCwgMTEzIGluc2VydGlvbnMoKyksIDQ1IGRlbGV0aW9ucygtKQo+ ID4gCgo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvaHcvdmlydGlvL2RhdGFwbGFuZS92cmluZy5o IGIvaW5jbHVkZS9ody92aXJ0aW8vZGF0YXBsYW5lL3ZyaW5nLmgKPiA+IGluZGV4IGQzZTA4NmEu LmZkZTE1ZjMgMTAwNjQ0Cj4gPiAtLS0gYS8gCj4gPiArKysgYi9pbmNsdWRlL2h3L3ZpcnRpby9k YXRhcGxhbmUvdnJpbmcuaAo+ID4gQEAgLTIwLDYgKzIwLDcgQEAKPiA+ICAjaW5jbHVkZSAicWVt dS1jb21tb24uaCIKPiA+ICAjaW5jbHVkZSAiaHcvdmlydGlvL3ZpcnRpb19yaW5nLmgiCj4gPiAg I2luY2x1ZGUgImh3L3ZpcnRpby92aXJ0aW8uaCIKPiA+ICsjaW5jbHVkZSAiaHcvdmlydGlvL3Zp cnRpby1hY2Nlc3MuaCIKPiA+IAo+IAo+IFNpbmNlIHRoZSBmb2xsb3dpbmcgY29tbWl0Ogo+IAo+ IGNvbW1pdCAyNDRlMjg5OGI3YTc3MzViM2RhMTE0YzEyMGFiZTIwNmFmNTZhMTY3Cj4gQXV0aG9y OiBGYW0gWmhlbmcgPGZhbXpAcmVkaGF0LmNvbT4KPiBEYXRlOiAgIFdlZCBTZXAgMjQgMTU6MjE6 NDEgMjAxNCArMDgwMAo+IAo+ICAgICB2aXJ0aW8tc2NzaTogQWRkIFZpcnRJT1NDU0lWcmluZyBp biBWaXJ0SU9TQ1NJUmVxCj4gCj4gVGhlIGluY2x1ZGUvaHcvdmlydGlvL2RhdGFwbGFuZS92cmlu Zy5oIGhlYWRlciBpcyBpbmRpcmVjdGx5IGluY2x1ZGVkCj4gYnkgaHcvdmlydGlvL3ZpcnRpby1w Y2kuYy4gV2h5IGRvbid0IHlvdSBtb3ZlIGFsbCB0aGlzIHRhcmdldCBkZXBlbmRlbnQKPiBoZWxw ZXJzIHRvIGFub3RoZXIgaGVhZGVyID8KCkFoLCB0aGlzIHNlZW1zIHRvIGhhdmUgY29tZSBpbiBh ZnRlciBJIGhhY2tlZCBvbiB0aGF0IGNvZGUgLSBJJ2xsIHRha2UgYQpsb29rIGF0IHNwbGl0dGlu ZyBvZmYgdGhlIGFjY2Vzc29ycy4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fClZpcnR1YWxpemF0aW9uIG1haWxpbmcgbGlzdApWaXJ0dWFsaXphdGlvbkBs aXN0cy5saW51eC1mb3VuZGF0aW9uLm9yZwpodHRwczovL2xpc3RzLmxpbnV4Zm91bmRhdGlvbi5v cmcvbWFpbG1hbi9saXN0aW5mby92aXJ0dWFsaXphdGlvbg== From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58235) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xjlse-0003nx-Jg for qemu-devel@nongnu.org; Thu, 30 Oct 2014 05:19:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XjlsU-0001ca-NS for qemu-devel@nongnu.org; Thu, 30 Oct 2014 05:18:56 -0400 Received: from e06smtp10.uk.ibm.com ([195.75.94.106]:47586) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XjlsU-0001cE-F0 for qemu-devel@nongnu.org; Thu, 30 Oct 2014 05:18:46 -0400 Received: from /spool/local by e06smtp10.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 30 Oct 2014 09:18:43 -0000 Received: from b06cxnps4076.portsmouth.uk.ibm.com (d06relay13.portsmouth.uk.ibm.com [9.149.109.198]) by d06dlp03.portsmouth.uk.ibm.com (Postfix) with ESMTP id 1D80E1B08051 for ; Thu, 30 Oct 2014 09:18:45 +0000 (GMT) Received: from d06av04.portsmouth.uk.ibm.com (d06av04.portsmouth.uk.ibm.com [9.149.37.216]) by b06cxnps4076.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id s9U9IfKB47972448 for ; Thu, 30 Oct 2014 09:18:41 GMT Received: from d06av04.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av04.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id s9U9IevK001537 for ; Thu, 30 Oct 2014 03:18:40 -0600 Date: Thu, 30 Oct 2014 10:18:38 +0100 From: Cornelia Huck Message-ID: <20141030101838.2ddee2dc.cornelia.huck@de.ibm.com> In-Reply-To: <20141028162254.2a4f2cf4@bahia.local> References: <1412692807-12398-1-git-send-email-cornelia.huck@de.ibm.com> <1412692807-12398-8-git-send-email-cornelia.huck@de.ibm.com> <20141028162254.2a4f2cf4@bahia.local> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH RFC 07/11] dataplane: allow virtio-1 devices List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Greg Kurz Cc: thuth@linux.vnet.ibm.com, rusty@rustcorp.com.au, qemu-devel@nongnu.org, kvm@vger.kernel.org, virtualization@lists.linux-foundation.org On Tue, 28 Oct 2014 16:22:54 +0100 Greg Kurz wrote: > On Tue, 7 Oct 2014 16:40:03 +0200 > Cornelia Huck wrote: >=20 > > Handle endianness conversion for virtio-1 virtqueues correctly. > >=20 > > Note that dataplane now needs to be built per-target. > >=20 >=20 > It also affects hw/virtio/virtio-pci.c: >=20 > In file included from include/hw/virtio/dataplane/vring.h:23:0, > from include/hw/virtio/virtio-scsi.h:21, > from hw/virtio/virtio-pci.c:24: > include/hw/virtio/virtio-access.h: In function =E2=80=98virtio_access_is_= big_endian=E2=80=99: > include/hw/virtio/virtio-access.h:28:15: error: attempt to use poisoned "= TARGET_WORDS_BIGENDIAN" > #elif defined(TARGET_WORDS_BIGENDIAN) > ^ >=20 > FWIW when I added endian ambivalent support to virtio, I remember *some p= eople* > getting angry at the idea of turning common code into per-target... :) Well, it probably can't be helped for something that is endian-sensitive like virtio :( (Although we should try to keep it as local as possible.) >=20 > See comment below. >=20 > > Signed-off-by: Cornelia Huck > > --- > > hw/block/dataplane/virtio-blk.c | 3 +- > > hw/scsi/virtio-scsi-dataplane.c | 2 +- > > hw/virtio/Makefile.objs | 2 +- > > hw/virtio/dataplane/Makefile.objs | 2 +- > > hw/virtio/dataplane/vring.c | 85 +++++++++++++++++++--------= -------- > > include/hw/virtio/dataplane/vring.h | 64 ++++++++++++++++++++++++-- > > 6 files changed, 113 insertions(+), 45 deletions(-) > >=20 > > diff --git a/include/hw/virtio/dataplane/vring.h b/include/hw/virtio/da= taplane/vring.h > > index d3e086a..fde15f3 100644 > > --- a/=20 > > +++ b/include/hw/virtio/dataplane/vring.h > > @@ -20,6 +20,7 @@ > > #include "qemu-common.h" > > #include "hw/virtio/virtio_ring.h" > > #include "hw/virtio/virtio.h" > > +#include "hw/virtio/virtio-access.h" > >=20 >=20 > Since the following commit: >=20 > commit 244e2898b7a7735b3da114c120abe206af56a167 > Author: Fam Zheng > Date: Wed Sep 24 15:21:41 2014 +0800 >=20 > virtio-scsi: Add VirtIOSCSIVring in VirtIOSCSIReq >=20 > The include/hw/virtio/dataplane/vring.h header is indirectly included > by hw/virtio/virtio-pci.c. Why don't you move all this target dependent > helpers to another header ? Ah, this seems to have come in after I hacked on that code - I'll take a look at splitting off the accessors.