Binbin Wu <[email protected]> writes:

>
> [...snip...]
>
>> +bool kvm_gmem_is_private(struct kvm *kvm, gfn_t gfn)
>> +{
>> +    struct kvm_memory_slot *slot = gfn_to_memslot(kvm, gfn);
>> +    struct inode *inode;
>> +
>> +    /*
>> +     * If this gfn has no associated memslot, there's no chance of the gfn
>> +     * being backed by private memory, since guest_memfd must be used for
>> +     * private memory,
>
> "guest_memfd must be used for private memory" is a bit confusing to me.
>

Hmm good point. Is the source of confusion that guest_memfd can be used
for both shared and private memory?

Perhaps this can be rephrased as:

guest_memfd is the only provider of private memory and guest_memfd must
be used with a memslot, hence if there's no associated memslot, there's
no chance of this gfn being private.

>> and guest_memfd must be associated with some memslot.
>> +     */
>> +    if (!slot)
>> +            return 0;
>> +
>>
>> [...snip...]
>>

Reply via email to