Re: [patch 1/2] mm, page_alloc: extend kernelcore and movablecore for percent

From: David Rientjes
Date: Tue Feb 13 2018 - 18:55:22 EST


On Tue, 13 Feb 2018, Andrew Morton wrote:

> > Both kernelcore= and movablecore= can be used to define the amount of
> > ZONE_NORMAL and ZONE_MOVABLE on a system, respectively. This requires
> > the system memory capacity to be known when specifying the command line,
> > however.
> >
> > This introduces the ability to define both kernelcore= and movablecore=
> > as a percentage of total system memory. This is convenient for systems
> > software that wants to define the amount of ZONE_MOVABLE, for example, as
> > a proportion of a system's memory rather than a hardcoded byte value.
> >
> > To define the percentage, the final character of the parameter should be
> > a '%'.
>
> Is this fine-grained enough? We've had percentage-based tunables in
> the past, and 10 years later when systems are vastly larger, 1% is too
> much.
>

They still have the (current) ability to define the exact amount of bytes
down to page sized granularity, whereas 1% would yield 40GB on a 4TB
system. I'm not sure that people will want any finer-grained control if
defining the proportion of the system for kernelcore. They do have the
ability with the existing interface, though, if they want to be that
precise.

(This is a cop out for not implementing some fractional percentage parser,
although that would be possible as a more complete solution.)