This patch adds a extended crashkernel syntax that makes the value of reserved
system RAM dependent on the system RAM itself:
crashkernel=<range1>:<size1>[,<range2>:<size2>,...][@offset]
range=start-[end]
For example:
crashkernel=512M-2G:64M,2G-:128M
The motivation comes from distributors that configure their crashkernel command
line automatically with some configuration tool (YaST, you know ;)). Of course
that tool knows the value of System RAM, but if the user removes RAM, then
the system becomes unbootable or at least unusable and error handling
is very difficult.
This series implements this change for i386, x86_64, ia64, ppc64 and sh. That
should be all platforms that support kdump in current mainline. I tested all
platforms except sh due to the lack of a sh processor.
The patch series is against 2.6.23-rc8-mm1 and replaces following patches:
- extended-crashkernel-command-line.patch
- use-extended-crashkernel-command-line-on-i386.patch
- use-extended-crashkernel-command-line-on-i386-fix-config_nohighmem-for-extended-crashkernel-command-line.patch
- use-extended-crashkernel-command-line-on-i386-fix-config_nohighmem-for-extended-crashkernel-command-line-fix.patch
- use-extended-crashkernel-command-line-on-x86_64.patch
- use-extended-crashkernel-command-line-on-ia64.patch
- use-extended-crashkernel-command-line-on-ia64-fix.patch
- use-extended-crashkernel-command-line-on-ppc64.patch
- use-extended-crashkernel-command-line-on-sh.patch
- add-documentation-for-extended-crashkernel-syntax.patch
- add-documentation-for-extended-crashkernel-syntax-add-extended-crashkernel-syntax-to-kernel-parameterstxt.patch
Modifications compared to last submit:
- typecast to (unsigned long long) before shifting
- small coding style adjustments
- BUG_ON() in parse_crashkernel()
- merge patch that adds documentation do Documentation/kernel-parameters.txt
in documentation patch (this has been an extra patch previously)
- fix build on IA64
- fix build on i386 with CONFIG_NOHIGHMEM
Signed-off-by: Bernhard Walle <[email protected]>
--