Re: [PATCH] mm, memory_hotplug: support movable_node for hotplugable nodes

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

 



On Mon, Jun 12, 2017 at 08:45:02AM +0200, Michal Hocko wrote:
>On Mon 12-06-17 12:28:32, Wei Yang wrote:
>> On Thu, Jun 08, 2017 at 02:23:18PM +0200, Michal Hocko wrote:
>> >From: Michal Hocko <mhocko@xxxxxxxx>
>> >
>> >movable_node kernel parameter allows to make hotplugable NUMA
>> >nodes to put all the hotplugable memory into movable zone which
>> >allows more or less reliable memory hotremove.  At least this
>> >is the case for the NUMA nodes present during the boot (see
>> >find_zone_movable_pfns_for_nodes).
>> >
>> 
>> When movable_node is enabled, we would have overlapped zones, right?
>
>It won't based on this patch. See movable_pfn_range
>

Ok, I went through the code and here maybe a question not that close related
to this patch.

I did some experiment with qemu+kvm and see this.

Guest config: 8G RAM, 2 nodes with 4G on each
Guest kernel: 4.11
Guest kernel command: kernelcore=1G

The log message in kernel is:

[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000001000-0x0000000000ffffff]
[    0.000000]   DMA32    [mem 0x0000000001000000-0x00000000ffffffff]
[    0.000000]   Normal   [mem 0x0000000100000000-0x000000023fffffff]
[    0.000000] Movable zone start for each node
[    0.000000]   Node 0: 0x0000000100000000
[    0.000000]   Node 1: 0x0000000140000000

We see on node 2, ZONE_NORMAL overlap with ZONE_MOVABLE. 
[0x0000000140000000 - 0x000000023fffffff] belongs to both ZONE.

My confusion is:

After we enable ZONE_MOVABLE, no matter whether it is enabled by
"movable_node" or "kernelcore", we would face this kind of overlap? 
Finally, the pages in the overlapped range be belongs to which ZONE?

-- 
Wei Yang
Help you, Help me

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]
  Powered by Linux