summaryrefslogtreecommitdiff
path: root/kexec/crashdump.h
diff options
context:
space:
mode:
authorDaniel Kiper <daniel.kiper@oracle.com>2015-11-28 21:14:04 +0100
committerSimon Horman <horms@verge.net.au>2015-11-30 08:55:23 +0900
commit8a1aa35a1077b42bc2a2afb05d24b637e1edf2a1 (patch)
tree07111fb6656f0db5c5948ef9d9def0a5ce7a522d /kexec/crashdump.h
parent6ba9e97c5b5f059c11b87f5f21f55bd92dcf1f2d (diff)
crashdump/x86: Add option to get crash kernel region size
Crash kernel region size is available via sysfs on Linux running on bare metal. However, this does not work when Linux runs as Xen dom0. In this case Xen crash kernel region size should be established using __HYPERVISOR_kexec_op hypercall (Linux kernel kexec functionality does not make a lot of sense in Xen dom0). Sadly hypercalls are not easily accessible using shell scripts or something like that. Potentially we can check "xl dmesg" output for crashkernel option but this is not nice. So, let's add this functionality, for Linux running on bare metal and as Xen dom0, to kexec-tools. This way kdump scripts may establish crash kernel region size in one way regardless of platform. All burden of platform detection lies on kexec-tools. Figure (and unit) displayed by this new kexec-tools functionality is the same as one taken from /sys/kernel/kexec_crash_size. This functionality is available on x86 platform only. If idea is acceptable then I can prepare patches for other platforms (if it is possible and make sense) and repost them as fully flagged patch series. Signed-off-by: Daniel Kiper <daniel.kiper@oracle.com> Signed-off-by: Simon Horman <horms@verge.net.au>
Diffstat (limited to 'kexec/crashdump.h')
-rw-r--r--kexec/crashdump.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/kexec/crashdump.h b/kexec/crashdump.h
index 95f1f0c..320767b 100644
--- a/kexec/crashdump.h
+++ b/kexec/crashdump.h
@@ -1,7 +1,6 @@
#ifndef CRASHDUMP_H
#define CRASHDUMP_H
-int get_crashkernel_region(uint64_t *start, uint64_t *end);
extern int get_crash_notes_per_cpu(int cpu, uint64_t *addr, uint64_t *len);
extern int get_kernel_vmcoreinfo(uint64_t *addr, uint64_t *len);
extern int get_xen_vmcoreinfo(uint64_t *addr, uint64_t *len);