On Mon 23-10-17 09:03:14, Sharath Kumar Bhat wrote: > On Mon, Oct 23, 2017 at 02:52:13PM +0200, Michal Hocko wrote: > > On Fri 20-10-17 16:32:09, Sharath Kumar Bhat wrote: > > > Currently when booted with the 'movable_node' kernel command-line the user > > > can not have both the functionality of 'movable_node' and at the same time > > > specify more movable memory than the total size of hotpluggable memories. > > > > > > This is a problem because it limits the total amount of movable memory in > > > the system to the total size of hotpluggable memories and in a system the > > > total size of hotpluggable memories can be very small or all hotpluggable > > > memories could have been offlined. The 'movable_node' parameter was aimed > > > to provide the entire memory of hotpluggable NUMA nodes to applications > > > without any kernel allocations in them. The 'movable_node' option will be > > > useful if those hotpluggable nodes have special memory like MCDRAM as in > > > KNL which is a high bandwidth memory and the user would like to use all of > > > it for applications. But in doing so the 'movable_node' command-line poses > > > this limitation and does not allow the user to specify more movable memory > > > in addition to the hotpluggable memories. > > > > > > With this change the existing 'movablecore=' and 'kernelcore=' command-line > > > parameters can be specified in addition to the 'movable_node' kernel > > > parameter. This allows the user to boot the kernel with an increased amount > > > of movable memory in the system and still have only movable memory in > > > hotpluggable NUMA nodes. > > > > I really detest making the already cluttered kernelcore* handling even > > more so. Why cannot your MCDRAM simply announce itself as hotplugable? > > Also it is not really clear to me how can you control that only your > > specific memory type gets into movable zone. > > -- > > Michal Hocko > > SUSE Labs > > In the example MCDRAM is already being announced as hotpluggable and > 'movable_node' is also used to ensure that there is no kernel allocations > in that. This is a required functionality but when done so user can not have > movable zone in other non-hotpluggable memories in addition to hotpluggable > memory. > > This change wont affect any of the present use cases such as 'kernelcore=' > or 'movablecore=' or using only 'movable_node'. They continue to work as > before. > > In addition to those it lets admin to specify 'kernelcore=' or > 'movablecore=' when using 'movable_node' command-line So, why exactly do we need this functionality? kernelcore is an ugly interface, I am not entirely thrilled into extending it even more. -- Michal Hocko SUSE Labs -- 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>