Re: [PATCH] mm: fix movable_node kernel command-line

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

 



On Mon, Oct 23, 2017 at 06:15:54PM +0200, Michal Hocko wrote:
> 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

This lets admin to configure the kernel to have movable memory > size of
hotpluggable memories and at the same time hotpluggable nodes have only
movable memory. This is useful because it lets user to have more movable
memory in the system that can be offlined/onlined. When the same hardware
is shared between two OS's then this helps to dynamically provision the
physical memory between them by offlining/onlining as and when the
application/user need changes.

--
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>



[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