diff options
Diffstat (limited to 'kernel/kexec.c')
| -rw-r--r-- | kernel/kexec.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/kernel/kexec.c b/kernel/kexec.c index a9a93d9ee7a7..87ebe8adc474 100644 --- a/kernel/kexec.c +++ b/kernel/kexec.c | |||
| @@ -32,6 +32,7 @@ | |||
| 32 | #include <linux/console.h> | 32 | #include <linux/console.h> |
| 33 | #include <linux/vmalloc.h> | 33 | #include <linux/vmalloc.h> |
| 34 | #include <linux/swap.h> | 34 | #include <linux/swap.h> |
| 35 | #include <linux/kmsg_dump.h> | ||
| 35 | 36 | ||
| 36 | #include <asm/page.h> | 37 | #include <asm/page.h> |
| 37 | #include <asm/uaccess.h> | 38 | #include <asm/uaccess.h> |
| @@ -40,7 +41,7 @@ | |||
| 40 | #include <asm/sections.h> | 41 | #include <asm/sections.h> |
| 41 | 42 | ||
| 42 | /* Per cpu memory for storing cpu states in case of system crash. */ | 43 | /* Per cpu memory for storing cpu states in case of system crash. */ |
| 43 | note_buf_t* crash_notes; | 44 | note_buf_t __percpu *crash_notes; |
| 44 | 45 | ||
| 45 | /* vmcoreinfo stuff */ | 46 | /* vmcoreinfo stuff */ |
| 46 | static unsigned char vmcoreinfo_data[VMCOREINFO_BYTES]; | 47 | static unsigned char vmcoreinfo_data[VMCOREINFO_BYTES]; |
| @@ -1074,6 +1075,9 @@ void crash_kexec(struct pt_regs *regs) | |||
| 1074 | if (mutex_trylock(&kexec_mutex)) { | 1075 | if (mutex_trylock(&kexec_mutex)) { |
| 1075 | if (kexec_crash_image) { | 1076 | if (kexec_crash_image) { |
| 1076 | struct pt_regs fixed_regs; | 1077 | struct pt_regs fixed_regs; |
| 1078 | |||
| 1079 | kmsg_dump(KMSG_DUMP_KEXEC); | ||
| 1080 | |||
| 1077 | crash_setup_regs(&fixed_regs, regs); | 1081 | crash_setup_regs(&fixed_regs, regs); |
| 1078 | crash_save_vmcoreinfo(); | 1082 | crash_save_vmcoreinfo(); |
| 1079 | machine_crash_shutdown(&fixed_regs); | 1083 | machine_crash_shutdown(&fixed_regs); |
