|
From: | Xiao Guangrong |
Subject: | Re: [Qemu-devel] [PATCH v2 08/18] nvdimm: init backend memory mapping and config data area |
Date: | Mon, 31 Aug 2015 14:23:43 +0800 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.1.0 |
Hi Stefan, On 08/28/2015 07:58 PM, Stefan Hajnoczi wrote:
+ goto do_unmap; + } + + nvdimm->device_index = new_device_index(); + sprintf(name, "NVDIMM-%d", nvdimm->device_index); + memory_region_init_ram_ptr(&nvdimm->mr, OBJECT(dev), name, nvdimm_size, + buf);How is the autogenerated name used? Why not just use "pc-nvdimm.memory"?Ah. Just for debug proposal :) and i am not sure if a name used for multiple MRs (MemoryRegion) is a good idea.Other devices use a constant name too (git grep memory_region_init_ram_ptr) so it seems to be okay. The unique thing is the OBJECT(dev) which differs for each NVDIMM instance.
When I was digging into live migration code, i noticed that the same MR name may cause the name "idstr", please refer to qemu_ram_set_idstr(). Since nvdimm devices do not have parent-bus, it will trigger the abort() in that function.
[Prev in Thread] | Current Thread | [Next in Thread] |