Hi Boris, On 6/7/2021 9:54 AM, Borislav Petkov wrote: > On Wed, Jun 02, 2021 at 09:04:00AM -0500, Brijesh Singh wrote: >> static bool early_setup_sev_es(void) > > This function is doing SNP init now too, so it should be called > something generic like > > do_early_sev_setup() > > or so. > >> #define GHCB_SEV_ES_GEN_REQ 0 >> #define GHCB_SEV_ES_PROT_UNSUPPORTED 1 >> +#define GHCB_SEV_ES_SNP_UNSUPPORTED 2 > > GHCB_SNP_UNSUPPORTED > >> +static bool __init sev_snp_check_hypervisor_features(void) > > check_hv_features() > Based on your feedback on AP creation patch to not use the accessors, I am inclined to remove this helper and have the caller directly check the feature bit, is that okay ? something like: if (sev_snp_enabled() && !(hv_features & GHCB_HV_FT_SNP)) sev_es_terminate(GHCB_SNP_UNSUPPORTED); Let me know if you think I should still keep the accessors. -Brijesh > is nice and short. > >> diff --git a/arch/x86/kernel/sev.c b/arch/x86/kernel/sev.c >> index 77a754365ba9..9b70b7332614 100644 >> --- a/arch/x86/kernel/sev.c >> +++ b/arch/x86/kernel/sev.c >> @@ -609,6 +609,10 @@ static bool __init sev_es_setup_ghcb(void) > > Ditto for this one: setup_ghcb() > > Thx. >