[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] kexec: provide user friendly option for memory limit
commit 90288044a67a29a5e34bf5b7e4e89a6bff5a97c3 Author: Simon Crowe <Simon.Crowe@xxxxxxxxxx> AuthorDate: Fri Jun 9 14:11:37 2017 +0200 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Fri Jun 9 14:11:37 2017 +0200 kexec: provide user friendly option for memory limit kexec: Provide user friendly option for memory limit grub2 requires that the '<' character be escaped which is inconvienet for users, provide a more natural specifier. Signed-off-by: Simon Crowe <Simon.Crowe@xxxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> Acked-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> --- docs/misc/kexec_and_kdump.txt | 8 +++++++- docs/misc/xen-command-line.markdown | 5 +++++ xen/common/kexec.c | 10 ++++++++-- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/docs/misc/kexec_and_kdump.txt b/docs/misc/kexec_and_kdump.txt index 2f93771..0842b3d 100644 --- a/docs/misc/kexec_and_kdump.txt +++ b/docs/misc/kexec_and_kdump.txt @@ -136,7 +136,13 @@ command line parameter to the Xen hypervisor. It has two forms: e.g. crashkernel=128M@256M - Regardless of which of the two forms of the crashkernel command line you + iii) crashkernel=size,below=offset + + This allows us to place the crash kernel within the usuable address + space without having to worry about a specific phyiscal address. + The '<' and 'below' options are synonymous + + Regardless of which of the forms of the crashkernel command line you use, the crash kernel region should appear in /proc/iomem on x86. If it doesn't then either the crashkernel parameter is missing, or for some reason the region couldn't be placed - for instance because it is too large. diff --git a/docs/misc/xen-command-line.markdown b/docs/misc/xen-command-line.markdown index 8c939c4..6eb5cfc 100644 --- a/docs/misc/xen-command-line.markdown +++ b/docs/misc/xen-command-line.markdown @@ -512,6 +512,7 @@ combination with the `low_crashinfo` command line option. ### crashkernel > `= <ramsize-range>:<size>[,...][{@,<}<offset>]` > `= <size>[{@,<}<offset>]` +> `= <size>,below=offset` Specify sizes and optionally placement of the crash kernel reservation area. The `<ramsize-range>:<size>` pairs indicate how much memory to @@ -523,6 +524,10 @@ A trailing `@<offset>` specifies the exact address this area should be placed at, whereas `<` in place of `@` just specifies an upper bound of the address range the area should fall into. +< and below are synonyomous, the latter being useful for grub2 systems +which would otherwise require escaping of the < option + + ### credit2\_balance\_over > `= <integer>` diff --git a/xen/common/kexec.c b/xen/common/kexec.c index fbca8a6..a52c30b 100644 --- a/xen/common/kexec.c +++ b/xen/common/kexec.c @@ -88,7 +88,7 @@ static void *crash_heap_current = NULL, *crash_heap_end = NULL; /* * Parse command lines in the format * - * crashkernel=<ramsize-range>:<size>[,...][{@,<}<address>] + * crashkernel=<ramsize-range>:<size>[,...][{@,<,below=}<address>] * * with <ramsize-range> being of form * @@ -97,6 +97,10 @@ static void *crash_heap_current = NULL, *crash_heap_end = NULL; * as well as the legacy ones in the format * * crashkernel=<size>[{@,<}<address>] + * crashkernel=<size>,below=address + * + * < and below are synonyomous, the latter being useful for grub2 systems + * which would otherwise require escaping of the < option */ static void __init parse_crashkernel(const char *str) { @@ -111,7 +115,7 @@ static void __init parse_crashkernel(const char *str) { printk(XENLOG_WARNING "crashkernel: too many ranges\n"); cur = NULL; - str = strpbrk(str, "@<"); + str = strpbrk(str, "@,<"); break; } @@ -162,6 +166,8 @@ static void __init parse_crashkernel(const char *str) kexec_crash_area.start = parse_size_and_unit(cur = str + 1, &str); else if ( *str == '<' ) kexec_crash_area_limit = parse_size_and_unit(cur = str + 1, &str); + else if ( !strncmp(str, ",below=", 7) ) + kexec_crash_area_limit = parse_size_and_unit(cur = str + 7, &str); else printk(XENLOG_WARNING "crashkernel: '%s' ignored\n", str); } -- generated by git-patchbot for /home/xen/git/xen.git#master _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx https://lists.xenproject.org/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |