Re: [PATCH v2 2/2] x86/sev: Add callback to apply RMP table fixups for kexec.

From: Kalra, Ashish
Date: Fri Apr 26 2024 - 10:56:38 EST


On 4/26/2024 7:58 AM, Borislav Petkov wrote:

On Wed, Apr 24, 2024 at 06:48:08PM -0500, Kalra, Ashish wrote:
This callback needs to be invoked as part of setup_arch() as it needs e820
table to be setup in e820__memory_setup() before the callback is invoked and
snp_init() is called from sme_enable() in kernel/head_64.S (startup_64),
which is much before start_kernel() -> setup_arch() is invoked.
So?

snp_init() still runs before e820__memory_setup(). So what's stopping
you?

As i have already explained above, snp_init() runs before e820__memory_setup() so we can't invoke this callback in snp_init() as e820 tables have still not been setup. Again to summarize, the e820 tables are setup in e820__memory_setup() which runs after snp_init().

Additionally, RMP table also get probed after snp_init(). So this callback cannot be invoked in snp_init().

I have added this comment to v3 of this patch series which i posted yesterday, so please look at those.

Thanks, Ashish