qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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


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

On Tue, 28 Oct 2014 16:22:54 +0100
Greg Kurz <address@hidden> wrote:

> On Tue,  7 Oct 2014 16:40:03 +0200
> Cornelia Huck <address@hidden> wrote:
> 
> > 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.
> 
> > Signed-off-by: Cornelia Huck <address@hidden>
> > ---
> >  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(-)
> > 

> > 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 <address@hidden>
> 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.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]