Messages in this thread | | | From | Vitaly Kuznetsov <> | Subject | Re: [PATCH 3/9] x86/hyperv: Mark Hyper-V vp assist page unencrypted in SEV-SNP enlightened guest | Date | Tue, 06 Jun 2023 17:49:15 +0200 |
| |
Tianyu Lan <ltykernel@gmail.com> 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
| |