Re: [RFC PATCH 1/8] KVM: Document KVM_MAP_MEMORY ioctl

From: David Matlack
Date: Wed Mar 06 2024 - 19:44:06 EST


On 2024-03-01 09:28 AM, isaku.yamahata@xxxxxxxxx wrote:
> From: Isaku Yamahata <isaku.yamahata@xxxxxxxxx>
> +
> + struct kvm_memory_mapping {
> + __u64 base_gfn;
> + __u64 nr_pages;
> + __u64 flags;
> + __u64 source;
> + };
> +
> + /* For kvm_memory_mapping:: flags */
> + #define KVM_MEMORY_MAPPING_FLAG_WRITE _BITULL(0)
> + #define KVM_MEMORY_MAPPING_FLAG_EXEC _BITULL(1)
> + #define KVM_MEMORY_MAPPING_FLAG_USER _BITULL(2)
> + #define KVM_MEMORY_MAPPING_FLAG_PRIVATE _BITULL(3)
> +
> +KVM_MAP_MEMORY populates guest memory in the underlying mapping. If source is
> +not zero and it's supported (depending on underlying technology), the guest
> +memory content is populated with the source.

What does "populated with the source" mean?

> The flags field supports three
> +flags: KVM_MEMORY_MAPPING_FLAG_WRITE, KVM_MEMORY_MAPPING_FLAG_EXEC, and
> +KVM_MEMORY_MAPPING_FLAG_USER.

There are 4 flags.