aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/crash.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/crash.c')
-rw-r--r--arch/x86/kernel/crash.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c
index 2c1910f6717e..58f34319b29a 100644
--- a/arch/x86/kernel/crash.c
+++ b/arch/x86/kernel/crash.c
@@ -35,6 +35,7 @@
35#include <asm/cpu.h> 35#include <asm/cpu.h>
36#include <asm/reboot.h> 36#include <asm/reboot.h>
37#include <asm/virtext.h> 37#include <asm/virtext.h>
38#include <asm/intel_pt.h>
38 39
39/* Alignment required for elf header segment */ 40/* Alignment required for elf header segment */
40#define ELF_CORE_HEADER_ALIGN 4096 41#define ELF_CORE_HEADER_ALIGN 4096
@@ -125,6 +126,11 @@ static void kdump_nmi_callback(int cpu, struct pt_regs *regs)
125 cpu_emergency_vmxoff(); 126 cpu_emergency_vmxoff();
126 cpu_emergency_svm_disable(); 127 cpu_emergency_svm_disable();
127 128
129 /*
130 * Disable Intel PT to stop its logging
131 */
132 cpu_emergency_stop_pt();
133
128 disable_local_APIC(); 134 disable_local_APIC();
129} 135}
130 136
@@ -169,6 +175,11 @@ void native_machine_crash_shutdown(struct pt_regs *regs)
169 cpu_emergency_vmxoff(); 175 cpu_emergency_vmxoff();
170 cpu_emergency_svm_disable(); 176 cpu_emergency_svm_disable();
171 177
178 /*
179 * Disable Intel PT to stop its logging
180 */
181 cpu_emergency_stop_pt();
182
172#ifdef CONFIG_X86_IO_APIC 183#ifdef CONFIG_X86_IO_APIC
173 /* Prevent crash_kexec() from deadlocking on ioapic_lock. */ 184 /* Prevent crash_kexec() from deadlocking on ioapic_lock. */
174 ioapic_zap_locks(); 185 ioapic_zap_locks();