[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 03/15] pc-dimm: keep the state of the whole b
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH v2 03/15] pc-dimm: keep the state of the whole backend memory |
Date: |
Mon, 30 May 2016 11:42:45 -0700 |
User-agent: |
Mutt/1.6.1 (2016-04-27) |
On Fri, May 20, 2016 at 04:20:00PM +0800, Xiao Guangrong wrote:
> QEMU keeps the state of memory of dimm device during live migration,
> however, it is not enough for nvdimm device as its memory does not
> contain its label data, so that we should protect the whole backend
> memory instead
>
> Signed-off-by: Xiao Guangrong <address@hidden>
> ---
> hw/mem/pc-dimm.c | 13 +++++++++++--
> 1 file changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/hw/mem/pc-dimm.c b/hw/mem/pc-dimm.c
> index 6de2275..72b33ba 100644
> --- a/hw/mem/pc-dimm.c
> +++ b/hw/mem/pc-dimm.c
> @@ -105,9 +105,16 @@ void pc_dimm_memory_plug(DeviceState *dev,
> MemoryHotplugState *hpms,
> }
>
> memory_region_add_subregion(&hpms->mr, addr - hpms->base, mr);
> - vmstate_register_ram(mr, dev);
> numa_set_mem_node_id(addr, memory_region_size(mr), dimm->node);
>
> + /*
> + * save the state only for @mr is not enough as it does not contain
> + * the label data of NVDIMM device, so that we keep the state of
> + * whole hostmem instead.
> + */
> + vmstate_register_ram(host_memory_backend_get_memory(dimm->hostmem, errp),
> + dev);
> +
> out:
> error_propagate(errp, local_err);
> }
In Patch 1 you introduced a callback to get the guest-visible memory
region. Instead of mentioning NVDIMM in generic pc-dimm.c code, it
would be cleaner to add another callback to get the vmstate memory
region:
.get_guest_memory_region() - Patch 1
.get_vmstate_memory_region() - a new patch in this series
signature.asc
Description: PGP signature
- [Qemu-devel] [PATCH v2 01/15] pc-dimm: get memory region from ->get_memory_region(), (continued)
- [Qemu-devel] [PATCH v2 01/15] pc-dimm: get memory region from ->get_memory_region(), Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 02/15] pc-dimm: introduce realize callback, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 08/15] nvdimm acpi: save arg3 of _DSM method, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 10/15] nvdimm acpi: abstract the operations for root & nvdimm devices, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 06/15] acpi: add aml_call5, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 11/15] nvdimm acpi: check revision, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 09/15] nvdimm acpi: check UUID, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 03/15] pc-dimm: keep the state of the whole backend memory, Xiao Guangrong, 2016/05/20
- Re: [Qemu-devel] [PATCH v2 03/15] pc-dimm: keep the state of the whole backend memory,
Stefan Hajnoczi <=
- [Qemu-devel] [PATCH v2 04/15] nvdimm: support nvdimm label, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 05/15] acpi: add aml_object_type, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 12/15] nvdimm acpi: support Get Namespace Label Size function, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 14/15] nvdimm acpi: support Set Namespace Label Data function, Xiao Guangrong, 2016/05/20
- [Qemu-devel] [PATCH v2 13/15] nvdimm acpi: support Get Namespace Label Data function, Xiao Guangrong, 2016/05/20