aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorAlexander Potapenko <glider@google.com>2024-09-06 15:16:07 +0200
committerAlexander Potapenko <glider@google.com>2024-09-06 14:02:35 +0000
commit9750182a9a67f35e95cb1e077a3b69a4a9b54083 (patch)
tree8af53a0ce4524c0eb93edc38ddb8e20d4b0fef4f /sys/linux
parent39dcba17ce1fb5884cc5d0812b55bfae28b3d33f (diff)
sys/linux/dev_kvm.txt: declare ioctl$KVM_SET_USER_MEMORY_REGION2
See https://docs.kernel.org/virt/kvm/api.html#kvm-set-user-memory-region2 for more details
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/dev_kvm.txt15
-rw-r--r--sys/linux/dev_kvm.txt.const2
2 files changed, 16 insertions, 1 deletions
diff --git a/sys/linux/dev_kvm.txt b/sys/linux/dev_kvm.txt
index 10c82d9f9..26d97340d 100644
--- a/sys/linux/dev_kvm.txt
+++ b/sys/linux/dev_kvm.txt
@@ -42,6 +42,7 @@ ioctl$KVM_XEN_HVM_CONFIG(fd fd_kvmvm, cmd const[KVM_XEN_HVM_CONFIG], arg ptr[in,
ioctl$KVM_GET_CLOCK(fd fd_kvmvm, cmd const[KVM_GET_CLOCK], arg ptr[out, kvm_clock_data])
ioctl$KVM_SET_CLOCK(fd fd_kvmvm, cmd const[KVM_SET_CLOCK], arg ptr[in, kvm_clock_data])
ioctl$KVM_SET_USER_MEMORY_REGION(fd fd_kvmvm, cmd const[KVM_SET_USER_MEMORY_REGION], arg ptr[in, kvm_userspace_memory_region])
+ioctl$KVM_SET_USER_MEMORY_REGION2(fd fd_kvmvm, cmd const[KVM_SET_USER_MEMORY_REGION2], arg ptr[in, kvm_userspace_memory_region2])
ioctl$KVM_SET_TSS_ADDR(fd fd_kvmvm, cmd const[KVM_SET_TSS_ADDR], arg flags[kvm_x86_tss_addr])
ioctl$KVM_SET_IDENTITY_MAP_ADDR(fd fd_kvmvm, cmd const[KVM_SET_IDENTITY_MAP_ADDR], arg ptr[in, flags[kvm_guest_addrs, int64]])
ioctl$KVM_SET_BOOT_CPU_ID(fd fd_kvmvm, cmd const[KVM_SET_BOOT_CPU_ID], arg ptr[in, intptr[0:2]])
@@ -170,7 +171,7 @@ ioctl$KVM_HAS_DEVICE_ATTR_vm(fd fd_kvmvm, cmd const[KVM_HAS_DEVICE_ATTR], arg pt
ioctl$KVM_CREATE_GUEST_MEMFD(fd fd_kvmvm, cmd const[KVM_CREATE_GUEST_MEMFD], arg ptr[in, kvm_create_guest_memfd]) fd_kvm_guest_memfd
ioctl$KVM_PRE_FAULT_MEMORY(fd fd_kvmcpu, cmd const[KVM_PRE_FAULT_MEMORY], arg ptr[inout, kvm_pre_fault_memory])
-kvm_mem_region_flags = KVM_MEM_LOG_DIRTY_PAGES, KVM_MEM_READONLY
+kvm_mem_region_flags = KVM_MEM_LOG_DIRTY_PAGES, KVM_MEM_READONLY, KVM_MEM_GUEST_MEMFD
kvm_mp_state = KVM_MP_STATE_RUNNABLE, KVM_MP_STATE_UNINITIALIZED, KVM_MP_STATE_INIT_RECEIVED, KVM_MP_STATE_HALTED, KVM_MP_STATE_SIPI_RECEIVED, KVM_MP_STATE_STOPPED, KVM_MP_STATE_CHECK_STOP, KVM_MP_STATE_OPERATING, KVM_MP_STATE_LOAD
kvm_irq_routing_entry_type = KVM_IRQ_ROUTING_IRQCHIP, KVM_IRQ_ROUTING_MSI, KVM_IRQ_ROUTING_S390_ADAPTER, KVM_IRQ_ROUTING_HV_SINT
kvm_ioeventfd_flags = KVM_IOEVENTFD_FLAG_DATAMATCH, KVM_IOEVENTFD_FLAG_PIO, KVM_IOEVENTFD_FLAG_DEASSIGN, KVM_IOEVENTFD_FLAG_VIRTIO_CCW_NOTIFY
@@ -776,6 +777,18 @@ kvm_userspace_memory_region {
addr vma64[1:2]
}
+kvm_userspace_memory_region2 {
+ slot flags[kvm_mem_slots, int32]
+ flags flags[kvm_mem_region_flags, int32]
+ paddr flags[kvm_guest_addrs, int64]
+ size len[addr, int64]
+ addr vma64[1:2]
+ guest_memfd_offset int64
+ guest_memfd fd_kvm_guest_memfd
+ pad1 const[0, int32]
+ pad2 array[const[0, int64], 14]
+}
+
# https://docs.kernel.org/virt/kvm/api.html#kvm-get-vcpu-events
kvm_vcpu_events_x86 {
exinjec int8
diff --git a/sys/linux/dev_kvm.txt.const b/sys/linux/dev_kvm.txt.const
index e87f446ad..62e7c1acd 100644
--- a/sys/linux/dev_kvm.txt.const
+++ b/sys/linux/dev_kvm.txt.const
@@ -164,6 +164,7 @@ KVM_IRQ_ROUTING_MSI = 2
KVM_IRQ_ROUTING_S390_ADAPTER = 3
KVM_KVMCLOCK_CTRL = 44717, mips64le:ppc64le:536915629
KVM_MAX_IRQ_ROUTES = 4096, 386:amd64:mips64le:ppc64le:???
+KVM_MEM_GUEST_MEMFD = 4
KVM_MEM_LOG_DIRTY_PAGES = 1
KVM_MEM_READONLY = 2
KVM_MP_STATE_CHECK_STOP = 6
@@ -230,6 +231,7 @@ KVM_SET_SREGS = 1094233732, arm64:1073786500, mips64le:2147528324, ppc64le:22282
KVM_SET_TSC_KHZ = 44706, mips64le:ppc64le:536915618
KVM_SET_TSS_ADDR = 44615, mips64le:ppc64le:536915527
KVM_SET_USER_MEMORY_REGION = 1075883590, mips64le:ppc64le:2149625414
+KVM_SET_USER_MEMORY_REGION2 = 1084272201, mips64le:ppc64le:2158014025
KVM_SET_VAPIC_ADDR = 1074310803, mips64le:ppc64le:2148052627
KVM_SET_VCPU_EVENTS = 1077980832, mips64le:ppc64le:s390x:???
KVM_SET_XCRS = 1099476647, arm64:mips64le:ppc64le:s390x:???