From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: From: Marc Zyngier Subject: [PATCH 2/2] ACPI: arm64: Reserve the ACPI tables in memblock Date: Thu, 29 Apr 2021 14:35:33 +0100 Message-Id: <20210429133533.1750721-3-maz@kernel.org> In-Reply-To: <20210429133533.1750721-1-maz@kernel.org> References: <20210429133533.1750721-1-maz@kernel.org> MIME-Version: 1.0 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "kexec" Errors-To: kexec-bounces+dwmw2=infradead.org@lists.infradead.org To: kexec@lists.infradead.org, linux-arm-kernel@lists.infradead.org Cc: Catalin Marinas , Will Deacon , Ard Biesheuvel , Mark Rutland , James Morse , Lorenzo Pieralisi , Hanjun Guo , Sudeep Holla , Eric Biederman , Bhupesh Sharma , AKASHI Takahiro , kernel-team@android.com Just like the EFI reservations, ACPI tables can be stamped over by kexec_file_load(), and the secondary kernel will be unable to recover from such corruption. It looks like our x86 friends have been there before, and have recently added some infratructure that does what we need since 1a1c130ab757 ("ACPI: tables: x86: Reserve memory occupied by ACPI tables"), though it appears to exist for different reasons. Let's call into acpi_reserve_initial_tables() early so that our tables are protected from the big bad kexec. Signed-off-by: Marc Zyngier --- arch/arm64/kernel/acpi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/kernel/acpi.c b/arch/arm64/kernel/acpi.c index cada0b816c8a..5b5406c92ee4 100644 --- a/arch/arm64/kernel/acpi.c +++ b/arch/arm64/kernel/acpi.c @@ -233,6 +233,7 @@ void __init acpi_boot_table_init(void) if (earlycon_acpi_spcr_enable) early_init_dt_scan_chosen_stdout(); } else { + acpi_reserve_initial_tables(); acpi_parse_spcr(earlycon_acpi_spcr_enable, true); if (IS_ENABLED(CONFIG_ACPI_BGRT)) acpi_table_parse(ACPI_SIG_BGRT, acpi_parse_bgrt); -- 2.29.2 _______________________________________________ kexec mailing list kexec@lists.infradead.org http://lists.infradead.org/mailman/listinfo/kexec