
========================
QEMU virtio pmem
========================

 This document explains the setup and usage of the virtio pmem device
 which is available since QEMU v4.1.0.

 The virtio pmem device is a paravirtualized persistent memory device
 on regular (i.e non-NVDIMM) storage.

Usecase
--------

  Virtio pmem allows to bypass the guest page cache and directly use
  host page cache. This reduces guest memory footprint as the host can
  make efficient memory reclaim decisions under memory pressure.

o How does virtio-pmem compare to the nvdimm emulation supported by QEMU?

  NVDIMM emulation on regular (i.e. non-NVDIMM) host storage does not
  persist the guest writes as there are no defined semantics in the device
  specification. The virtio pmem device provides guest write persistence
  on non-NVDIMM host storage.

virtio pmem usage
-----------------

  A virtio pmem device backed by a memory-backend-file can be created on
  the QEMU command line as in the following example::

    -object memory-backend-file,id=mem1,share,mem-path=./virtio_pmem.img,size=4G
    -device virtio-pmem-pci,memdev=mem1,id=nv1

  where:

  - "object memory-backend-file,id=mem1,share,mem-path=<image>, size=<image size>"
    creates a backend file with the specified size.

  - "device virtio-pmem-pci,id=nvdimm1,memdev=mem1" creates a virtio pmem
    pci device whose storage is provided by above memory backend device.

  Multiple virtio pmem devices can be created if multiple pairs of "-object"
  and "-device" are provided.

Hotplug
-------

Virtio pmem devices can be hotplugged via the QEMU monitor. First, the
memory backing has to be added via 'object_add'; afterwards, the virtio
pmem device can be added via 'device_add'.

For example, the following commands add another 4GB virtio pmem device to
the guest::

 (qemu) object_add memory-backend-file,id=mem2,share=on,mem-path=virtio_pmem2.img,size=4G
 (qemu) device_add virtio-pmem-pci,id=virtio_pmem2,memdev=mem2

Guest Data Persistence
----------------------

 Guest data persistence on non-NVDIMM requires guest userspace applications
 to perform fsync/msync. This is different from a real nvdimm backend where
 no additional fsync/msync is required. This is to persist guest writes in
 host backing file which otherwise remains in host page cache and there is
 risk of losing the data in case of power failure.

 With virtio pmem device, MAP_SYNC mmap flag is not supported. This provides
 a hint to application to perform fsync for write persistence.

Limitations
------------
- Real nvdimm device backend is not supported.
- virtio pmem hotunplug is not supported.
- ACPI NVDIMM features like regions/namespaces are not supported.
- ndctl command is not supported.
