Re: [PATCH] kexec: use Crash kernel for Crash kernel low

From: Vivek Goyal
Date: Tue Apr 02 2013 - 10:17:56 EST


On Tue, Apr 02, 2013 at 09:50:01AM -0400, Vivek Goyal wrote:

[..]
> To achieve the behavior where we want to enforce that memory either
> comes from low or high area only otherwise allocation fails, we could
> probably use.
>
> crashkernel=X,high_only
> crashkernel=X,low_only

Thinking more about it. We have following existing syntax.

crashkernel=range1:size1[,range2:size2,...][@offset]

Which uses ',' as delimiter for range:size pairs.

May be we can use a different delimiter, say ';'.

crashkernel=<amount_of_memory_to_reserve>;<option1>;<option2>

All the existing crashkernel= options should fall into the category of
<amount_of_memory_to_reserve>.

option1 could specify whether to search for memory from higher addresses
or from lower addresses. (valid values are high or low)

option2 could specify the range of memory search should be performed in.
syntax to specify range could be XM:[YM]. So one could possibly specify.

4G-8G
<4G
>4G:<8G
>8G

Now crashkernel_low=0 could be emulated by

crashkernel=0M;;<4G

If we want to reserve 128MB of memory between 4G and 8G and starting scan
from high, we could say.

crashkernel=128M;high;>4G:<8G

If this is deemed too generic and not worth it. Then we could simplify
option 2 to take values "high_only" and "low_only" and that leaves the
scope of implementing proper ranges down the line if need be.

So crashkernel_low=0 will be emulated by.

crashkernel=0M;;low_only

Thanks
Vivek
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/