Tianyu Lan <ltykernel@xxxxxxxxx> writes: > On 6/5/2023 8:13 PM, Vitaly Kuznetsov wrote: >>> @@ -113,6 +114,11 @@ static int hv_cpu_init(unsigned int cpu) >>> >>> } >>> if (!WARN_ON(!(*hvp))) { >>> + if (hv_isolation_type_en_snp()) { >>> + WARN_ON_ONCE(set_memory_decrypted((unsigned long)(*hvp), 1)); >>> + memset(*hvp, 0, PAGE_SIZE); >>> + } >> Why do we need to set the page as decrypted here and not when we >> allocate the page (a few lines above)? > > If Linux root partition boots in the SEV-SNP guest, the page still needs > to be decrypted. > I'd suggest we add a flag to indicate that VP assist page was actually set (on the first invocation of hv_cpu_init() for guest partitions and all invocations for root partition) and only call set_memory_decrypted()/memset() then: that would both help with the potential issue with KVM using enlightened vmcs and avoid the unneeded hypercall. -- Vitaly