From: Marc Zyngier <maz@kernel.org> To: kexec@lists.infradead.org, linux-arm-kernel@lists.infradead.org Cc: Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will@kernel.org>, Ard Biesheuvel <ardb@kernel.org>, Mark Rutland <mark.rutland@arm.com>, James Morse <james.morse@arm.com>, Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>, Hanjun Guo <guohanjun@huawei.com>, Sudeep Holla <sudeep.holla@arm.com>, Eric Biederman <ebiederm@xmission.com>, Bhupesh Sharma <bhsharma@redhat.com>, AKASHI Takahiro <takahiro.akashi@linaro.org>, kernel-team@android.com Subject: [PATCH 2/2] ACPI: arm64: Reserve the ACPI tables in memblock Date: Thu, 29 Apr 2021 14:35:33 +0100 [thread overview] Message-ID: <20210429133533.1750721-3-maz@kernel.org> (raw) In-Reply-To: <20210429133533.1750721-1-maz@kernel.org> 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 <maz@kernel.org> --- 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 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Marc Zyngier <maz@kernel.org> To: kexec@lists.infradead.org, linux-arm-kernel@lists.infradead.org Cc: Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will@kernel.org>, Ard Biesheuvel <ardb@kernel.org>, Mark Rutland <mark.rutland@arm.com>, James Morse <james.morse@arm.com>, Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>, Hanjun Guo <guohanjun@huawei.com>, Sudeep Holla <sudeep.holla@arm.com>, Eric Biederman <ebiederm@xmission.com>, Bhupesh Sharma <bhsharma@redhat.com>, AKASHI Takahiro <takahiro.akashi@linaro.org>, kernel-team@android.com Subject: [PATCH 2/2] ACPI: arm64: Reserve the ACPI tables in memblock Date: Thu, 29 Apr 2021 14:35:33 +0100 [thread overview] Message-ID: <20210429133533.1750721-3-maz@kernel.org> (raw) In-Reply-To: <20210429133533.1750721-1-maz@kernel.org> 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 <maz@kernel.org> --- 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
next prev parent reply other threads:[~2021-04-29 13:37 UTC|newest] Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-04-29 13:35 [PATCH 0/2] arm64: kexec_file_load vs memory reservations Marc Zyngier 2021-04-29 13:35 ` Marc Zyngier 2021-04-29 13:35 ` [PATCH 1/2] firmware/efi: Tell memblock about EFI reservations Marc Zyngier 2021-04-29 13:35 ` Marc Zyngier 2021-05-03 18:56 ` Moritz Fischer 2021-05-03 18:56 ` Moritz Fischer 2021-05-13 3:20 ` Dave Young 2021-05-13 3:20 ` Dave Young 2021-05-13 11:11 ` Marc Zyngier 2021-05-13 11:11 ` Marc Zyngier 2021-04-29 13:35 ` Marc Zyngier [this message] 2021-04-29 13:35 ` [PATCH 2/2] ACPI: arm64: Reserve the ACPI tables in memblock Marc Zyngier 2021-05-03 18:57 ` Moritz Fischer 2021-05-03 18:57 ` Moritz Fischer 2021-05-12 18:04 ` [PATCH 0/2] arm64: kexec_file_load vs memory reservations Marc Zyngier 2021-05-12 18:04 ` Marc Zyngier 2021-05-13 3:17 ` Dave Young 2021-05-13 3:17 ` Dave Young 2021-05-13 11:07 ` Marc Zyngier 2021-05-13 11:07 ` Marc Zyngier 2021-05-18 11:48 ` Will Deacon 2021-05-18 11:48 ` Will Deacon 2021-05-18 14:23 ` Bhupesh Sharma 2021-05-18 14:23 ` Bhupesh Sharma 2021-05-19 15:19 ` Catalin Marinas 2021-05-19 15:19 ` Catalin Marinas 2021-05-25 16:22 ` Marc Zyngier 2021-05-25 16:22 ` Marc Zyngier 2021-06-02 14:22 ` James Morse 2021-06-02 14:22 ` James Morse 2021-06-02 15:59 ` Marc Zyngier 2021-06-02 15:59 ` Marc Zyngier 2021-06-02 16:58 ` James Morse 2021-06-02 16:58 ` James Morse
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210429133533.1750721-3-maz@kernel.org \ --to=maz@kernel.org \ --cc=ardb@kernel.org \ --cc=bhsharma@redhat.com \ --cc=catalin.marinas@arm.com \ --cc=ebiederm@xmission.com \ --cc=guohanjun@huawei.com \ --cc=james.morse@arm.com \ --cc=kernel-team@android.com \ --cc=kexec@lists.infradead.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=lorenzo.pieralisi@arm.com \ --cc=mark.rutland@arm.com \ --cc=sudeep.holla@arm.com \ --cc=takahiro.akashi@linaro.org \ --cc=will@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.