diff options
Diffstat (limited to 'include/linux/kexec.h')
-rw-r--r-- | include/linux/kexec.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/include/linux/kexec.h b/include/linux/kexec.h index 696e5ec63f77..8c2c7fcd58ce 100644 --- a/include/linux/kexec.h +++ b/include/linux/kexec.h | |||
@@ -7,6 +7,8 @@ | |||
7 | #include <linux/linkage.h> | 7 | #include <linux/linkage.h> |
8 | #include <linux/compat.h> | 8 | #include <linux/compat.h> |
9 | #include <linux/ioport.h> | 9 | #include <linux/ioport.h> |
10 | #include <linux/elfcore.h> | ||
11 | #include <linux/elf.h> | ||
10 | #include <asm/kexec.h> | 12 | #include <asm/kexec.h> |
11 | 13 | ||
12 | /* Verify architecture specific macros are defined */ | 14 | /* Verify architecture specific macros are defined */ |
@@ -31,6 +33,19 @@ | |||
31 | #error KEXEC_ARCH not defined | 33 | #error KEXEC_ARCH not defined |
32 | #endif | 34 | #endif |
33 | 35 | ||
36 | #define KEXEC_NOTE_HEAD_BYTES ALIGN(sizeof(struct elf_note), 4) | ||
37 | #define KEXEC_CORE_NOTE_NAME "CORE" | ||
38 | #define KEXEC_CORE_NOTE_NAME_BYTES ALIGN(sizeof(KEXEC_CORE_NOTE_NAME), 4) | ||
39 | #define KEXEC_CORE_NOTE_DESC_BYTES ALIGN(sizeof(struct elf_prstatus), 4) | ||
40 | /* | ||
41 | * The per-cpu notes area is a list of notes terminated by a "NULL" | ||
42 | * note header. For kdump, the code in vmcore.c runs in the context | ||
43 | * of the second kernel to combine them into one note. | ||
44 | */ | ||
45 | #define KEXEC_NOTE_BYTES ( (KEXEC_NOTE_HEAD_BYTES * 2) + \ | ||
46 | KEXEC_CORE_NOTE_NAME_BYTES + \ | ||
47 | KEXEC_CORE_NOTE_DESC_BYTES ) | ||
48 | |||
34 | /* | 49 | /* |
35 | * This structure is used to hold the arguments that are used when loading | 50 | * This structure is used to hold the arguments that are used when loading |
36 | * kernel binaries. | 51 | * kernel binaries. |
@@ -136,7 +151,7 @@ extern struct kimage *kexec_crash_image; | |||
136 | /* Location of a reserved region to hold the crash kernel. | 151 | /* Location of a reserved region to hold the crash kernel. |
137 | */ | 152 | */ |
138 | extern struct resource crashk_res; | 153 | extern struct resource crashk_res; |
139 | typedef u32 note_buf_t[MAX_NOTE_BYTES/4]; | 154 | typedef u32 note_buf_t[KEXEC_NOTE_BYTES/4]; |
140 | extern note_buf_t *crash_notes; | 155 | extern note_buf_t *crash_notes; |
141 | 156 | ||
142 | 157 | ||