On Wed, Oct 17, 2018 at 10:25 AM Luyao Zhong <luyao.zh...@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@redhat.com > https://www.redhat.com/mailman/listinfo/libvir-list > -- Best regards, ----------------------------------- Han Han Quality Engineer Redhat. Email: h...@redhat.com Phone: +861065339333
-- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list