Re: [RFC PATCH 3/6] KVM: SVM: Implement demand page pinning

From: Nikunj A. Dadhania
Date: Tue Jan 25 2022 - 12:49:33 EST


Hi Peter

On 1/25/2022 10:17 PM, Peter Gonda wrote:
>> @@ -1637,8 +1627,6 @@ static void sev_migrate_from(struct kvm_sev_info *dst,
>> src->handle = 0;
>> src->pages_locked = 0;
>> src->enc_context_owner = NULL;
>> -
>> - list_cut_before(&dst->regions_list, &src->regions_list, &src->regions_list);
> I think we need to move the pinned SPTE entries into the target, and
> repin the pages in the target here. Otherwise the pages will be
> unpinned when the source is cleaned up. Have you thought about how
> this could be done?
>
I am testing migration with pinned_list, I see that all the guest pages are
transferred/pinned on the other side during migration. I think that there is
assumption that all private pages needs to be moved.

QEMU: target/i386/sev.c:bool sev_is_gfn_in_unshared_region(unsigned long gfn)

Will dig more on this.

Regards
Nikunj