[libvirt] [RFC 0/3] update NVDIMM support

Han Han hhan at redhat.com
Thu Oct 18 01:10:41 UTC 2018


On Wed, Oct 17, 2018 at 10:25 AM Luyao Zhong <luyao.zhong at intel.com> wrote:

> Hi libvirt experts,
>
> This is the RFC for updating NVDIMM support in libvirt.
>
> QEMU has supported four more properties which libvirt has not introduced
> yet, including 'align', 'pmem', 'nvdimm-persistences' and 'unarmed'.
>
> The 'align' property allows users to specify the proper alignment. The
> previous alignment can only be 4K because QEMU use pagesize as alignment.
> But some backends may require alignments different from the pagesize.
>
> The 'pmem' property allows users to specify whether the backend storage of
> memory-backend-file is a real persistent memory. Then QEMU will know if
> it needs to guarrantee the write persistence to the vNVDIMM backend.
>
> The 'nvdimm-persistence' property allows users to set platform-supported
> features about NVDIMM data persistence of a guest.
>
> The 'unarmed' property allows users to mark vNVDIMM read-only. Only the
> device DAX on the real NVDIMM can guarantee the guest write persistence,
> so it's suggested to set 'unarmed' option to 'on' and then vNVDIMM device
> will be marked as read-only.
>
> Libvirt introduces 'alignsize', 'pmem', 'persistence' and 'unarmed' config
> elements into xml corresponding to 'align', 'pmem', 'nvdimm-persistence'
> and 'unarmed' properties in QEMU, and update xml parsing, formating and
> qemu command-line generating process for NVDIMM.
>
> Thanks,
> Zhong, Luyao
>
> Luyao Zhong (3):
>   xml: introduce more config elements for NVDIMM memory
>   xml: update xml parsing and formating about NVDIMM memory
>   qemu: update qemu command-line generating for NVDIMM memory
>
>  docs/formatdomain.html.in                          |  98
> +++++++++++++++---
>  docs/schemas/domaincommon.rng                      |  31 +++++-
>
Please add a patch to update the release news in news.xml.

>  src/conf/domain_conf.c                             | 115
> +++++++++++++++++++--
>  src/conf/domain_conf.h                             |  14 +++
>  src/libvirt_private.syms                           |   2 +
>  src/qemu/qemu_command.c                            |  25 +++++
>  .../memory-hotplug-nvdimm-align.args               |  31 ++++++
>  .../memory-hotplug-nvdimm-align.xml                |  58 +++++++++++
>  .../memory-hotplug-nvdimm-persistence.args         |  31 ++++++
>  .../memory-hotplug-nvdimm-persistence.xml          |  58 +++++++++++
>  .../memory-hotplug-nvdimm-pmem.args                |  31 ++++++
>  .../memory-hotplug-nvdimm-pmem.xml                 |  58 +++++++++++
>  .../memory-hotplug-nvdimm-unarmed.args             |  31 ++++++
>  .../memory-hotplug-nvdimm-unarmed.xml              |  58 +++++++++++
>  tests/qemuxml2argvtest.c                           |  12 +++
>  .../memory-hotplug-nvdimm-align.xml                |   1 +
>  .../memory-hotplug-nvdimm-persistence.xml          |   1 +
>  .../memory-hotplug-nvdimm-pmem.xml                 |   1 +
>  .../memory-hotplug-nvdimm-unarmed.xml              |   1 +
>  tests/qemuxml2xmltest.c                            |   4 +
>  20 files changed, 636 insertions(+), 25 deletions(-)
>  create mode 100644 tests/qemuxml2argvdata/memory-hotplug-nvdimm-align.args
>  create mode 100644 tests/qemuxml2argvdata/memory-hotplug-nvdimm-align.xml
>  create mode 100644
> tests/qemuxml2argvdata/memory-hotplug-nvdimm-persistence.args
>  create mode 100644
> tests/qemuxml2argvdata/memory-hotplug-nvdimm-persistence.xml
>  create mode 100644 tests/qemuxml2argvdata/memory-hotplug-nvdimm-pmem.args
>  create mode 100644 tests/qemuxml2argvdata/memory-hotplug-nvdimm-pmem.xml
>  create mode 100644
> tests/qemuxml2argvdata/memory-hotplug-nvdimm-unarmed.args
>  create mode 100644
> tests/qemuxml2argvdata/memory-hotplug-nvdimm-unarmed.xml
>  create mode 120000
> tests/qemuxml2xmloutdata/memory-hotplug-nvdimm-align.xml
>  create mode 120000
> tests/qemuxml2xmloutdata/memory-hotplug-nvdimm-persistence.xml
>  create mode 120000 tests/qemuxml2xmloutdata/memory-hotplug-nvdimm-pmem.xml
>  create mode 120000
> tests/qemuxml2xmloutdata/memory-hotplug-nvdimm-unarmed.xml
>
> --
> 2.7.4
>
> --
> libvir-list mailing list
> libvir-list at redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
>


-- 
Best regards,
-----------------------------------
Han Han
Quality Engineer
Redhat.

Email: hhan at redhat.com
Phone: +861065339333
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20181018/bc0c1588/attachment-0001.htm>


More information about the libvir-list mailing list