Hi libvirt experts, This is the RFC v3 for updating NVDIMM support in libvirt. There are some gaps between qemu and libvirt, libvirt has not supported several config options about NVDIMM memory while qemu is ready now, including 'align', 'pmem', 'unarmed'. I reworded and recoded my patches according to some feedback comments from community once more. But I met some issues I can't handle. I list them as follows: a. add qemu_capabilities check I want to add some nvdimm-related qemu_capabilities check, just like 'QEMU_CAPS_OBJECT_MEMORY_FILE_ALIGN' in patch 2/4, and I try to add the relevant sections into *.replies files manually. But the qemucapabilitiestest failed, I don't know why. It seems something wrong with the *.replies file. I think the *.replies doesn't depends on other code or file, right? Could you help me address this issue? The test log doesn't give me any useful info. b. DO_TEST & DO_TEST_CAPS_LATEST In the previous patches, several experts suggest me using DO_TEST_CAPS_LATEST, but the testcases will fail. I guess it may be related to the qemu_capabilities check I mentioned above. I'm not sure if this issue will disappeared when the first one is be resolved. Besides, the whole nvdimm stuff do not introduce enough qemu_capabilities check and do not use DO_TEST_CAPS_LATEST. Maybe it is better to do these modification in another patch set. Or we can rely on qemu errors, it's just what libvirt do currently. What' your comments? Thank you in advance. Regards, Luyao Zhong Luyao Zhong (4): nvdimm: introduce more config elements into xml for NVDIMM memory nvdimm: add nvdimm-related qemucapabilities check nvdimm: update qemu command-line generating for NVDIMM memory nvdimm: update news.xml docs/formatdomain.html.in | 80 ++++++++++++++++++---- docs/news.xml | 9 +++ docs/schemas/domaincommon.rng | 23 ++++++- src/conf/domain_conf.c | 61 +++++++++++++++-- src/conf/domain_conf.h | 3 + src/qemu/qemu_capabilities.c | 8 ++- src/qemu/qemu_capabilities.h | 4 ++ src/qemu/qemu_command.c | 32 +++++++++ tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml | 1 + tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml | 1 + tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml | 1 + tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml | 1 + tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml | 1 + tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml | 1 + tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml | 1 + tests/qemucapabilitiesdata/caps_3.1.0.ppc64.xml | 2 + tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml | 2 + .../memory-hotplug-nvdimm-align.args | 31 +++++++++ .../memory-hotplug-nvdimm-align.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 | 11 +++ .../memory-hotplug-nvdimm-align.xml | 1 + .../memory-hotplug-nvdimm-pmem.xml | 1 + .../memory-hotplug-nvdimm-unarmed.xml | 1 + tests/qemuxml2xmltest.c | 3 + 30 files changed, 491 insertions(+), 26 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-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-pmem.xml create mode 120000 tests/qemuxml2xmloutdata/memory-hotplug-nvdimm-unarmed.xml -- 2.7.4 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list