RE: [PATCH Part2 v6 05/49] x86/sev: Add RMP entry lookup helpers

From: Kalra, Ashish
Date: Wed Jun 22 2022 - 15:43:34 EST


[AMD Official Use Only - General]


-----Original Message-----
From: Dave Hansen <dave.hansen@xxxxxxxxx>
Sent: Wednesday, June 22, 2022 1:43 PM
To: Kalra, Ashish <Ashish.Kalra@xxxxxxx>; x86@xxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; kvm@xxxxxxxxxxxxxxx; linux-coco@xxxxxxxxxxxxxxx; linux-mm@xxxxxxxxx; linux-crypto@xxxxxxxxxxxxxxx
Cc: tglx@xxxxxxxxxxxxx; mingo@xxxxxxxxxx; jroedel@xxxxxxx; Lendacky, Thomas <Thomas.Lendacky@xxxxxxx>; hpa@xxxxxxxxx; ardb@xxxxxxxxxx; pbonzini@xxxxxxxxxx; seanjc@xxxxxxxxxx; vkuznets@xxxxxxxxxx; jmattson@xxxxxxxxxx; luto@xxxxxxxxxx; dave.hansen@xxxxxxxxxxxxxxx; slp@xxxxxxxxxx; pgonda@xxxxxxxxxx; peterz@xxxxxxxxxxxxx; srinivas.pandruvada@xxxxxxxxxxxxxxx; rientjes@xxxxxxxxxx; dovmurik@xxxxxxxxxxxxx; tobin@xxxxxxx; bp@xxxxxxxxx; Roth, Michael <Michael.Roth@xxxxxxx>; vbabka@xxxxxxx; kirill@xxxxxxxxxxxxx; ak@xxxxxxxxxxxxxxx; tony.luck@xxxxxxxxx; marcorr@xxxxxxxxxx; sathyanarayanan.kuppuswamy@xxxxxxxxxxxxxxx; alpergun@xxxxxxxxxx; dgilbert@xxxxxxxxxx; jarkko@xxxxxxxxxx
Subject: Re: [PATCH Part2 v6 05/49] x86/sev: Add RMP entry lookup helpers

On 6/22/22 11:34, Kalra, Ashish wrote:
>>> So, if the RMP entry format changes in future processors, how do we
>>> make sure that the kernel does not try to use *this* code on those
>>> processors?
>> Functions snp_lookup_rmpentry() and dump_rmpentry() which rely on this
>> structure definition will need to handle it accordingly.

>In other words, old kernels will break on new hardware?

>I think that needs to be fixed. It should be as simple as a model/family check, though. If someone (for example) attempts to use SNP (and thus snp_lookup_rmpentry() and dump_rmpentry()) code on a newer CPU, the kernel should refuse.

More specifically I am thinking of adding RMP entry field accessors so that they can do this cpu model/family check and return the correct field as per processor architecture.

Thanks,
Ashish