0001
0002 #ifndef __KVM_COALESCED_MMIO_H__
0003 #define __KVM_COALESCED_MMIO_H__
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifdef CONFIG_KVM_MMIO
0015
0016 #include <linux/list.h>
0017
0018 struct kvm_coalesced_mmio_dev {
0019 struct list_head list;
0020 struct kvm_io_device dev;
0021 struct kvm *kvm;
0022 struct kvm_coalesced_mmio_zone zone;
0023 };
0024
0025 int kvm_coalesced_mmio_init(struct kvm *kvm);
0026 void kvm_coalesced_mmio_free(struct kvm *kvm);
0027 int kvm_vm_ioctl_register_coalesced_mmio(struct kvm *kvm,
0028 struct kvm_coalesced_mmio_zone *zone);
0029 int kvm_vm_ioctl_unregister_coalesced_mmio(struct kvm *kvm,
0030 struct kvm_coalesced_mmio_zone *zone);
0031
0032 #else
0033
0034 static inline int kvm_coalesced_mmio_init(struct kvm *kvm) { return 0; }
0035 static inline void kvm_coalesced_mmio_free(struct kvm *kvm) { }
0036
0037 #endif
0038
0039 #endif