[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/7] virtio-pmem: add virtio device
From: |
Pankaj Gupta |
Subject: |
Re: [Qemu-devel] [PATCH 1/7] virtio-pmem: add virtio device |
Date: |
Mon, 10 Jun 2019 01:09:11 -0400 (EDT) |
>
> > This is the implementation of virtio-pmem device. Support will require
> > machine changes for the architectures that will support it, so it will
> > not yet be compiled. It can be unlocked with VIRTIO_PMEM_SUPPORTED per
> > machine and disabled globally via VIRTIO_PMEM.
> >
> > We cannot use the "addr" property as that is already used e.g. for
> > virtio-pci/pci devices. And we will have e.g. virtio-pmem-pci as a proxy.
> > So we have to choose a different one (unfortunately). "memaddr" it is.
> > That name should ideally be used by all other virtio-* based memory
> > devices in the future.
> > -device virtio-pmem-pci,id=p0,bus=bux0,addr=0x01,memaddr=0x1000000...
> >
> > Acked-by: Markus Armbruster <address@hidden>
> > [ QAPI bits ]
> > Signed-off-by: Pankaj Gupta <address@hidden>
> > [ MemoryDevice/MemoryRegion changes, cleanups, addr property "memaddr",
> > split up patches, unplug handler ]
> > Signed-off-by: David Hildenbrand <address@hidden>
> > ---
> > hw/virtio/Kconfig | 10 +++
> > hw/virtio/Makefile.objs | 1 +
> > hw/virtio/virtio-pmem.c | 190
> > ++++++++++++++++++++++++++++++++++++++++
> > include/hw/virtio/virtio-pmem.h | 49 +++++++++++
> > qapi/misc.json | 28 +++++-
> > 5 files changed, 277 insertions(+), 1 deletion(-)
> > create mode 100644 hw/virtio/virtio-pmem.c
> > create mode 100644 include/hw/virtio/virtio-pmem.h
>
> > diff --git a/hw/virtio/virtio-pmem.c b/hw/virtio/virtio-pmem.c
> > new file mode 100644
> > index 0000000000..c462d2c942
> > --- /dev/null
> > +++ b/hw/virtio/virtio-pmem.c
> > @@ -0,0 +1,190 @@
>
> > +static void virtio_pmem_unrealize(DeviceState *dev, Error **errp)
> > +{
> > + VirtIODevice *vdev = VIRTIO_DEVICE(dev);
> > + VirtIOPMEM *pmem = VIRTIO_PMEM(dev);
> > +
> > + host_memory_backend_set_mapped(pmem->memdev, false);
> > + pmem->rq_vq = virtio_add_queue(vdev, 128, virtio_pmem_flush);
>
> Adding a queue during unrealize looks weird... copy/paste error?
Yes. Thanks for catching this. Will correct in v2.
Thanks,
Pankaj
>
> > + virtio_cleanup(vdev);
> > +}
>
>