Re: [RFC PATCH v11 07/29] KVM: Add KVM_EXIT_MEMORY_FAULT exit

From: Sean Christopherson
Date: Wed Jul 19 2023 - 10:17:03 EST


On Wed, Jul 19, 2023, Yuan Yao wrote:
> On Tue, Jul 18, 2023 at 04:44:50PM -0700, Sean Christopherson wrote:
> > From: Chao Peng <chao.p.peng@xxxxxxxxxxxxxxx>
> >
> > This new KVM exit allows userspace to handle memory-related errors. It
> > indicates an error happens in KVM at guest memory range [gpa, gpa+size).
> > The flags includes additional information for userspace to handle the
> > error. Currently bit 0 is defined as 'private memory' where '1'
> > indicates error happens due to private memory access and '0' indicates
> > error happens due to shared memory access.
>
> Now it's bit 3:

Yeah, I need to update (or write) a lot of changelogs.

> #define KVM_MEMORY_EXIT_FLAG_PRIVATE (1ULL << 3)
>
> I remember some other attributes were introduced in v10 yet:
>
> #define KVM_MEMORY_ATTRIBUTE_READ (1ULL << 0)
> #define KVM_MEMORY_ATTRIBUTE_WRITE (1ULL << 1)
> #define KVM_MEMORY_ATTRIBUTE_EXECUTE (1ULL << 2)
> #define KVM_MEMORY_ATTRIBUTE_PRIVATE (1ULL << 3)
>
> So KVM_MEMORY_EXIT_FLAG_PRIVATE changed to bit 3 due to above things,
> or other reason ? (Sorry I didn't follow v10 too much before).

Yep, I want to reserve space for the RWX bits.