diff options
author | Michael Holzheu <holzheu@linux.vnet.ibm.com> | 2012-05-18 09:10:05 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2012-05-23 11:06:51 -0400 |
commit | a9fbf1a53836d4105f95df947ac00e22311dff33 (patch) | |
tree | 0e40706419697af9ab89281285a8d27a15591022 /arch/s390/kernel/machine_kexec.c | |
parent | d7b7cdea06360d3151cc8118751b3b82519c4ce0 (diff) |
s390/kdump: Account /sys/kernel/kexec_crash_size changes in OS info
The crashkernel size for kdump can be reduced at runtime with the
sysfs file "/sys/kernel/kexec_crash_size". Currently those changes
do not update the OS info crashkernel information that is used
for stand-alone kdump. With this fix now also the OS info crashkernel
information is updated correctly.
Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/machine_kexec.c')
-rw-r--r-- | arch/s390/kernel/machine_kexec.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/s390/kernel/machine_kexec.c b/arch/s390/kernel/machine_kexec.c index bdad47d54478..03d2027d656a 100644 --- a/arch/s390/kernel/machine_kexec.c +++ b/arch/s390/kernel/machine_kexec.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <asm/ipl.h> | 24 | #include <asm/ipl.h> |
25 | #include <asm/diag.h> | 25 | #include <asm/diag.h> |
26 | #include <asm/asm-offsets.h> | 26 | #include <asm/asm-offsets.h> |
27 | #include <asm/os_info.h> | ||
27 | 28 | ||
28 | typedef void (*relocate_kernel_t)(kimage_entry_t *, unsigned long); | 29 | typedef void (*relocate_kernel_t)(kimage_entry_t *, unsigned long); |
29 | 30 | ||
@@ -114,8 +115,13 @@ static void crash_map_pages(int enable) | |||
114 | size % KEXEC_CRASH_MEM_ALIGN); | 115 | size % KEXEC_CRASH_MEM_ALIGN); |
115 | if (enable) | 116 | if (enable) |
116 | vmem_add_mapping(crashk_res.start, size); | 117 | vmem_add_mapping(crashk_res.start, size); |
117 | else | 118 | else { |
118 | vmem_remove_mapping(crashk_res.start, size); | 119 | vmem_remove_mapping(crashk_res.start, size); |
120 | if (size) | ||
121 | os_info_crashkernel_add(crashk_res.start, size); | ||
122 | else | ||
123 | os_info_crashkernel_add(0, 0); | ||
124 | } | ||
119 | } | 125 | } |
120 | 126 | ||
121 | /* | 127 | /* |