[PATCH v3 6/6] crashdump/x86: set the elfcorehdr segment size for hotplug
Eric DeVolder
eric.devolder at oracle.com
Wed Sep 27 11:11:36 PDT 2023
For hotplug, the elfcorehdr segment must be sized appropriately
to allow a growing number of CPUs or memory regions. Use the size
reported by the kernel via /sys/kernel/crash_elfcorehdr_sz.
Signed-off-by: Eric DeVolder <eric.devolder at oracle.com>
---
kexec/arch/i386/crashdump-x86.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/kexec/arch/i386/crashdump-x86.c b/kexec/arch/i386/crashdump-x86.c
index cb86ca7..a01031e 100644
--- a/kexec/arch/i386/crashdump-x86.c
+++ b/kexec/arch/i386/crashdump-x86.c
@@ -957,6 +957,14 @@ int load_crashdump_segments(struct kexec_info *info, char* mod_cmdline,
memsz = bufsz;
}
+ /* For hotplug support, override the minimum necessary size just
+ * computed with the value from /sys/kernel/crash_elfcorehdr_size.
+ * Properly align the size as well.
+ */
+ if (do_hotplug) {
+ memsz = _ALIGN(elfcorehdrsz, align);
+ }
+
/* Record the location of the elfcorehdr for hotplug handling */
info->elfcorehdr =
elfcorehdr = add_buffer(info, tmp, bufsz, memsz, align, min_base,
--
2.39.3
More information about the kexec
mailing list