diff mbox series

fix kdump kernel cannot find ACPI RSDP

Message ID 20240524094149.189329-1-chunjie.zhu@cloud.com
State New
Headers show
Series fix kdump kernel cannot find ACPI RSDP | expand

Commit Message

Chunjie Zhu May 24, 2024, 9:41 a.m. UTC
kexec/kdump must pass acpi_rsdp (physical address of ACPI RSDP table) to the
crash kernel, especially in EFI case, otherwise, the crash kernel fails to
locate ACPI RSDP table. Consequently, ACPI init runs into error, and APIC
mmio read page fault happens, finally crash kernel gets stuck.

Signed-off-by: Chunjie Zhu <chunjie.zhu@cloud.com>
---
 drivers/acpi/osl.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
index f725813d0cce..39474468dba1 100644
--- a/drivers/acpi/osl.c
+++ b/drivers/acpi/osl.c
@@ -174,7 +174,7 @@  void acpi_os_vprintf(const char *fmt, va_list args)
 #endif
 }
 
-#ifdef CONFIG_KEXEC
+#ifdef CONFIG_KEXEC_CORE
 static unsigned long acpi_rsdp;
 static int __init setup_acpi_rsdp(char *arg)
 {
@@ -187,7 +187,7 @@  acpi_physical_address __init acpi_os_get_root_pointer(void)
 {
 	acpi_physical_address pa;
 
-#ifdef CONFIG_KEXEC
+#ifdef CONFIG_KEXEC_CORE
 	/*
 	 * We may have been provided with an RSDP on the command line,
 	 * but if a malicious user has done so they may be pointing us