Changelog in v2: Thanks for Stefan's review, the changes in this version are: - rename nvdimm device parameter 'reserve-label' to 'label-size' to specify the size of label - add comment to explain why assert() used in nvdimm_assert_rw_label_data() is safe - follow the code style of 'foo() return;' if nothing is returned by fool() - fix the value of "Non-existing-Memory-Device" - fix the handling the DSM functions we currently did not support This patchset is against commit 2912f22759 (fixup! virtio: convert to use DMA api) on pci branch of Michael's git tree and can be found at: https://github.com/xiaogr/qemu.git nvdimm-label-v2 This is the last part of vNVDIMM implementation which introduces nvdimm label support Currently Linux NVDIMM driver does not support namespace operation on this kind of PMEM, apply below changes to support dynamical namespace: @@ -798,7 +823,8 @@ static int acpi_nfit_register_dimms(struct acpi_nfit_desc *a continue; } - if (nfit_mem->bdw && nfit_mem->memdev_pmem) + //if (nfit_mem->bdw && nfit_mem->memdev_pmem) + if (nfit_mem->memdev_pmem) flags |= NDD_ALIASING; You can append a NVDIMM device in guest and do: # cd /sys/bus/nd/devices/ # cd namespace0.0/ # echo `uuidgen` > uuid # echo `expr 1024 \* 1024 \* 128` > size then reload nd.pmem.ko You can see /dev/pmem0 appears Xiao Guangrong (15): pc-dimm: get memory region from ->get_memory_region() pc-dimm: introduce realize callback pc-dimm: keep the state of the whole backend memory nvdimm: support nvdimm label acpi: add aml_object_type acpi: add aml_call5 nvdimm acpi: set HDLE properly nvdimm acpi: save arg3 of _DSM method nvdimm acpi: check UUID nvdimm acpi: abstract the operations for root & nvdimm devices nvdimm acpi: check revision nvdimm acpi: support Get Namespace Label Size function nvdimm acpi: support Get Namespace Label Data function nvdimm acpi: support Set Namespace Label Data function docs: add NVDIMM ACPI documentation docs/specs/acpi_nvdimm.txt | 132 +++++++++++++++ hw/acpi/aml-build.c | 22 +++ hw/acpi/nvdimm.c | 400 ++++++++++++++++++++++++++++++++++++++++---- hw/mem/nvdimm.c | 122 ++++++++++++++ hw/mem/pc-dimm.c | 21 ++- include/hw/acpi/aml-build.h | 3 + include/hw/mem/nvdimm.h | 55 +++++- include/hw/mem/pc-dimm.h | 6 +- 8 files changed, 723 insertions(+), 38 deletions(-) create mode 100644 docs/specs/acpi_nvdimm.txt -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html