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

Luyao Zhong posted 3 patches 5 years, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/1539742905-15644-1-git-send-email-luyao.zhong@intel.com
docs/formatdomain.html.in                          |  98 +++++++++++++++---
docs/schemas/domaincommon.rng                      |  31 +++++-
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
[libvirt] [RFC 0/3] update NVDIMM support
Posted by Luyao Zhong 5 years, 6 months ago
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 +++++-
 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
Re: [libvirt] [RFC 0/3] update NVDIMM support
Posted by Han Han 5 years, 6 months ago
On Wed, Oct 17, 2018 at 10:25 AM Luyao Zhong <luyao.zhong@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: hhan@redhat.com
Phone: +861065339333
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [RFC 0/3] update NVDIMM support
Posted by Luyao Zhong 5 years, 6 months ago
Hi Han,

I'm not sure which release my patches will merge into. How about adding 
the patch to update the release news after my last version of these 
patches.  Waiting for more reviews and comments.

Regards,
Luyao Zhong

On 2018/10/18 上午9:10, Han Han wrote:
>
>
> On Wed, Oct 17, 2018 at 10:25 AM Luyao Zhong <luyao.zhong@intel.com 
> <mailto:luyao.zhong@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 <http://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 <mailto:libvir-list@redhat.com>
>     https://www.redhat.com/mailman/listinfo/libvir-list
>
>
>
> -- 
> Best regards,
> -----------------------------------
> Han Han
> Quality Engineer
> Redhat.
>
> Email: hhan@redhat.com <mailto:hhan@redhat.com>
> Phone: +861065339333
>
> --
> libvir-list mailing list
> libvir-list@redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [RFC 0/3] update NVDIMM support
Posted by Han Han 5 years, 6 months ago
On Thu, Oct 18, 2018 at 11:07 AM Luyao Zhong <luyao.zhong@intel.com> wrote:

> Hi Han,
>
> I'm not sure which release my patches will merge into. How about adding
> the patch to update the release news after my last version of these
> patches.  Waiting for more reviews and comments.
>
Well. That's OK.

> Regards,
> Luyao Zhong
>
> On 2018/10/18 上午9:10, Han Han wrote:
>
>
>
> On Wed, Oct 17, 2018 at 10:25 AM Luyao Zhong <luyao.zhong@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: hhan@redhat.com
> Phone: +861065339333
>
> --
> libvir-list mailing listlibvir-list@redhat.comhttps://www.redhat.com/mailman/listinfo/libvir-list
>
>

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

Email: hhan@redhat.com
Phone: +861065339333
--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [RFC 0/3] update NVDIMM support
Posted by Luyao Zhong 5 years, 5 months ago
polite ping

On 2018/10/17 上午10:21, Luyao Zhong 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 +++++-
>   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
> 

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list