@@ -6996,6 +6996,7 @@ spec refer, https://github.com/riscv/riscv-sbi-doc.
/* KVM_EXIT_MEMORY_FAULT */
struct {
#define KVM_MEMORY_EXIT_FLAG_PRIVATE (1ULL << 3)
+ #define KVM_MEMORY_EXIT_FLAG_USERFAULT (1ULL << 4)
__u64 flags;
__u64 gpa;
__u64 size;
@@ -7009,6 +7010,8 @@ describes properties of the faulting access that are likely pertinent:
- KVM_MEMORY_EXIT_FLAG_PRIVATE - When set, indicates the memory fault occurred
on a private memory access. When clear, indicates the fault occurred on a
shared access.
+ - KVM_MEMORY_EXIT_FLAG_USERFAULT - When set, indicates the memory fault
+ occurred, because the vCPU attempted to access a gfn marked as userfault.
Note! KVM_EXIT_MEMORY_FAULT is unique among all KVM exit reasons in that it
accompanies a return code of '-1', not '0'! errno will always be set to EFAULT
Update KVM documentation to reflect the change made in [1]: add KVM_MEMORY_EXIT_FLAG_USERFAULT flag to struct memory_fault. [1] https://lore.kernel.org/lkml/20240710234222.2333120-7-jthoughton@google.com/ Signed-off-by: Nikita Kalyazin <kalyazin@amazon.com> --- Documentation/virt/kvm/api.rst | 3 +++ 1 file changed, 3 insertions(+)