Hi hpa and Tang, How do you think about the attached patches, which reserves memory for hotplug from memblock/bootmem allocator at early booting stages? Logically we split the task into three parts: 1) Provide a mechanism to specify zone_movable[] by kernel parameter. Patch 1-4 from Tang achieves this goal by adding "movablecore_map" kernel parameter. 2) Reserve memory for hotplug by reusing information provided by "movablecore_map". Patch 5 from Tang achieve this goal. And the attached patches provides another way to achieve the same goal by calling memblock_reserve() and newly introduced memblock interfaces. 3) Automatically reserve memory for hotplug according to firmware provided information based on the attached patches. Regards! Gerry On 11/27/2012 01:31 PM, H. Peter Anvin wrote: > On 11/26/2012 07:15 PM, Wen Congyang wrote: >> >> Hi, hpa >> >> The problem is that: >> node1 address rang: [18G, 34G), and the user specifies movable map is [8G, 24G). >> We don't know node1's address range before numa init. So we can't prevent >> allocating boot memory in the range [24G, 34G). >> >> The movable memory should be classified as a non-RAM type in memblock. What >> do you want to say? We don't save type in memblock because we only >> add E820_RAM and E820_RESERVED_KERN to memblock. >> > > We either need to keep the type or not add it to the memblocks. > > -hpa > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>