qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 10/10] Compile virtio-blk only once


From: Blue Swirl
Subject: Re: [Qemu-devel] [PATCH 10/10] Compile virtio-blk only once
Date: Fri, 26 Mar 2010 23:35:06 +0200

On 3/26/10, Anthony Liguori <address@hidden> wrote:
> On 03/26/2010 02:04 PM, Blue Swirl wrote:
>
> > Replace access macros with direct accesses.
> >
> > Signed-off-by: Blue Swirl<address@hidden>
> > ---
> >  Makefile.objs   |    3 ++-
> >  Makefile.target |    2 +-
> >  hw/virtio-blk.c |    6 +++---
> >  3 files changed, 6 insertions(+), 5 deletions(-)
> >
> > diff --git a/Makefile.objs b/Makefile.objs
> > index cad6490..5612ec2 100644
> > --- a/Makefile.objs
> > +++ b/Makefile.objs
> > @@ -128,7 +128,8 @@ user-obj-y += cutils.o cache-utils.o
> >
> >  hw-obj-y =
> >  hw-obj-y += loader.o
> > -hw-obj-y += virtio.o virtio-console.o virtio-pci.o virtio-net.o
> > virtio-serial-bus.o
> > +hw-obj-y += virtio.o virtio-console.o virtio-pci.o
> > +hw-obj-y += virtio-blk.o virtio-net.o virtio-serial-bus.o
> >  hw-obj-y += fw_cfg.o pci.o pci_host.o pcie_host.o
> >  hw-obj-y += watchdog.o
> >  hw-obj-$(CONFIG_ISA_MMIO) += isa_mmio.o
> > diff --git a/Makefile.target b/Makefile.target
> > index e43e138..169c11e 100644
> > --- a/Makefile.target
> > +++ b/Makefile.target
> > @@ -165,7 +165,7 @@ obj-y = vl.o monitor.o machine.o gdbstub.o
> >  obj-y += qemu-timer.o
> >  # virtio has to be here due to weird dependency between PCI and
> virtio-net.
> >  # need to fix this properly
> > -obj-y += virtio-blk.o virtio-balloon.o
> > +obj-y += virtio-balloon.o
> >  obj-y += rwhandler.o
> >  obj-$(CONFIG_KVM) += kvm.o kvm-all.o
> >  LIBS+=-lz
> > diff --git a/hw/virtio-blk.c b/hw/virtio-blk.c
> > index 9915840..d9dd9a7 100644
> > --- a/hw/virtio-blk.c
> > +++ b/hw/virtio-blk.c
> > @@ -411,9 +411,9 @@ static void
> virtio_blk_update_config(VirtIODevice
> > *vdev, uint8_t *config)
> >      bdrv_get_geometry(s->bs,&capacity);
> >
> bdrv_get_geometry_hint(s->bs,&cylinders,&heads,&secs);
> >      memset(&blkcfg, 0, sizeof(blkcfg));
> > -    stq_raw(&blkcfg.capacity, capacity);
> > -    stl_raw(&blkcfg.seg_max, 128 - 2);
> > -    stw_raw(&blkcfg.cylinders, cylinders);
> > +    blkcfg.capacity = capacity;
> > +    blkcfg.seg_max = 128 - 2;
> > +    blkcfg.cylinders = cylinders;
> >
> >
>
>  This looks wrong to me.
>
>  These values need to be in guest endianness.

Then we probably need a flag to indicate the endianness, passed from
virtio-pci. It gets a bit more complicated.




reply via email to

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