[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2ab14f6f-2690-056b-cf9e-38a12dafd728@amd.com>
Date: Tue, 2 Apr 2024 10:54:50 -0500
From: Tom Lendacky <thomas.lendacky@....com>
To: bp@...nel.org, ashish.kalra@....com
Cc: bp@...en8.de, linux-kernel@...r.kernel.org,
linux-tip-commits@...r.kernel.org, michael.roth@....com, x86@...nel.org
Subject: Re: [PATCH] x86/sev: Apply RMP table fixups for kexec.
On 4/2/24 09:45, bp@...nel.org wrote:
> From: Borislav Petkov <bp@...en8.de>
>
> On Tue, Mar 12, 2024 at 06:47:57PM +0000, Ashish Kalra wrote:
>> From: Ashish Kalra <ashish.kalra@....com>
>>
>> RMP table start and end physical range may not be aligned to 2MB in
>> the e820 tables
>
> This already sounds fishy. Why may the range not be aligned? This is
> BIOS, right? And BIOS can be fixed to align them properly.
There's no requirement from a hardware/RMP usage perspective that
requires a 2MB alignment, so BIOS is not doing anything wrong. The
problem occurs because kexec is initially using 2MB mappings that
overlap the start and/or end of the RMP which then results in an RMP
fault when memory within one of those 2MB mappings, that is not part of
the RMP, is referenced.
Additionally, we have BIOSes out there since Milan that don't do this
2MB alignment. And do you really trust that BIOS will do this properly
all the time?
I think it needs to be checked and mitigated in the kernel.
Thanks,
Tom
>
Powered by blists - more mailing lists