qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 00/15] PATCH 00/15] NVDIMM: introduce nvdimm


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH v2 00/15] PATCH 00/15] NVDIMM: introduce nvdimm label support
Date: Mon, 30 May 2016 11:52:01 -0700
User-agent: Mutt/1.6.1 (2016-04-27)

On Fri, May 20, 2016 at 04:19:57PM +0800, Xiao Guangrong wrote:
> 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

I have reviewed the non-ACPI parts of this series.  Aside from minor
comments:

Reviewed-by: Stefan Hajnoczi <address@hidden>

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]