aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/kvm.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/kvm.h')
-rw-r--r--include/linux/kvm.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/include/linux/kvm.h b/include/linux/kvm.h
index a74a1fcc28e9..230a91aa61c9 100644
--- a/include/linux/kvm.h
+++ b/include/linux/kvm.h
@@ -307,6 +307,28 @@ struct kvm_guest_debug {
307 struct kvm_guest_debug_arch arch; 307 struct kvm_guest_debug_arch arch;
308}; 308};
309 309
310enum {
311 kvm_ioeventfd_flag_nr_datamatch,
312 kvm_ioeventfd_flag_nr_pio,
313 kvm_ioeventfd_flag_nr_deassign,
314 kvm_ioeventfd_flag_nr_max,
315};
316
317#define KVM_IOEVENTFD_FLAG_DATAMATCH (1 << kvm_ioeventfd_flag_nr_datamatch)
318#define KVM_IOEVENTFD_FLAG_PIO (1 << kvm_ioeventfd_flag_nr_pio)
319#define KVM_IOEVENTFD_FLAG_DEASSIGN (1 << kvm_ioeventfd_flag_nr_deassign)
320
321#define KVM_IOEVENTFD_VALID_FLAG_MASK ((1 << kvm_ioeventfd_flag_nr_max) - 1)
322
323struct kvm_ioeventfd {
324 __u64 datamatch;
325 __u64 addr; /* legal pio/mmio address */
326 __u32 len; /* 1, 2, 4, or 8 bytes */
327 __s32 fd;
328 __u32 flags;
329 __u8 pad[36];
330};
331
310#define KVM_TRC_SHIFT 16 332#define KVM_TRC_SHIFT 16
311/* 333/*
312 * kvm trace categories 334 * kvm trace categories
@@ -412,6 +434,7 @@ struct kvm_guest_debug {
412#ifdef __KVM_HAVE_PIT_STATE2 434#ifdef __KVM_HAVE_PIT_STATE2
413#define KVM_CAP_PIT_STATE2 35 435#define KVM_CAP_PIT_STATE2 35
414#endif 436#endif
437#define KVM_CAP_IOEVENTFD 36
415 438
416#ifdef KVM_CAP_IRQ_ROUTING 439#ifdef KVM_CAP_IRQ_ROUTING
417 440
@@ -520,6 +543,7 @@ struct kvm_irqfd {
520#define KVM_IRQFD _IOW(KVMIO, 0x76, struct kvm_irqfd) 543#define KVM_IRQFD _IOW(KVMIO, 0x76, struct kvm_irqfd)
521#define KVM_CREATE_PIT2 _IOW(KVMIO, 0x77, struct kvm_pit_config) 544#define KVM_CREATE_PIT2 _IOW(KVMIO, 0x77, struct kvm_pit_config)
522#define KVM_SET_BOOT_CPU_ID _IO(KVMIO, 0x78) 545#define KVM_SET_BOOT_CPU_ID _IO(KVMIO, 0x78)
546#define KVM_IOEVENTFD _IOW(KVMIO, 0x79, struct kvm_ioeventfd)
523 547
524/* 548/*
525 * ioctls for vcpu fds 549 * ioctls for vcpu fds