Thread (1 message) 1 message, 1 author, 2014-10-30

Re: [Qemu-devel] [PATCH RFC 07/11] dataplane: allow virtio-1 devices

From: Cornelia Huck <hidden>
Date: 2014-10-30 09:19:05
Also in: kvm, qemu-devel

On Tue, 28 Oct 2014 16:22:54 +0100
Greg Kurz [off-list ref] wrote:
On Tue,  7 Oct 2014 16:40:03 +0200
Cornelia Huck [off-list ref] wrote:
quoted
Handle endianness conversion for virtio-1 virtqueues correctly.

Note that dataplane now needs to be built per-target.
It also affects hw/virtio/virtio-pci.c:

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 ‘virtio_access_is_big_endian’:
include/hw/virtio/virtio-access.h:28:15: error: attempt to use poisoned "TARGET_WORDS_BIGENDIAN"
 #elif defined(TARGET_WORDS_BIGENDIAN)
               ^

FWIW when I added endian ambivalent support to virtio, I remember *some people*
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.)
See comment below.
quoted
Signed-off-by: Cornelia Huck <redacted>
---
 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(-)
quoted
diff --git a/include/hw/virtio/dataplane/vring.h b/include/hw/virtio/dataplane/vring.h
index d3e086a..fde15f3 100644
--- a/ 
+++ 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"
Since the following commit:

commit 244e2898b7a7735b3da114c120abe206af56a167
Author: Fam Zheng [off-list ref]
Date:   Wed Sep 24 15:21:41 2014 +0800

    virtio-scsi: Add VirtIOSCSIVring in VirtIOSCSIReq

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.

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help