On Wed, 12 Jun 2019 18:15:22 +0530 Pankaj Gupta <pagupta@xxxxxxxxxx> wrote: > This patch adds virtio-pmem driver for KVM guest. > > Guest reads the persistent memory range information from > Qemu over VIRTIO and registers it on nvdimm_bus. It also > creates a nd_region object with the persistent memory > range information so that existing 'nvdimm/pmem' driver > can reserve this into system memory map. This way > 'virtio-pmem' driver uses existing functionality of pmem > driver to register persistent memory compatible for DAX > capable filesystems. > > This also provides function to perform guest flush over > VIRTIO from 'pmem' driver when userspace performs flush > on DAX memory range. > > Signed-off-by: Pankaj Gupta <pagupta@xxxxxxxxxx> > Reviewed-by: Yuval Shaia <yuval.shaia@xxxxxxxxxx> > Acked-by: Michael S. Tsirkin <mst@xxxxxxxxxx> > Acked-by: Jakub Staron <jstaron@xxxxxxxxxx> > Tested-by: Jakub Staron <jstaron@xxxxxxxxxx> > --- > drivers/nvdimm/Makefile | 1 + > drivers/nvdimm/nd_virtio.c | 125 +++++++++++++++++++++++++++++++ > drivers/nvdimm/virtio_pmem.c | 122 ++++++++++++++++++++++++++++++ > drivers/nvdimm/virtio_pmem.h | 55 ++++++++++++++ > drivers/virtio/Kconfig | 11 +++ > include/uapi/linux/virtio_ids.h | 1 + > include/uapi/linux/virtio_pmem.h | 35 +++++++++ > 7 files changed, 350 insertions(+) > create mode 100644 drivers/nvdimm/nd_virtio.c > create mode 100644 drivers/nvdimm/virtio_pmem.c > create mode 100644 drivers/nvdimm/virtio_pmem.h > create mode 100644 include/uapi/linux/virtio_pmem.h Reviewed-by: Cornelia Huck <cohuck@xxxxxxxxxx>