diff options
Diffstat (limited to 'include/linux/kvm_host.h')
-rw-r--r-- | include/linux/kvm_host.h | 28 |
1 files changed, 12 insertions, 16 deletions
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h index 26f106022c88..d12b2104d19b 100644 --- a/include/linux/kvm_host.h +++ b/include/linux/kvm_host.h | |||
@@ -33,10 +33,6 @@ | |||
33 | 33 | ||
34 | #include <asm/kvm_host.h> | 34 | #include <asm/kvm_host.h> |
35 | 35 | ||
36 | #ifndef KVM_MMIO_SIZE | ||
37 | #define KVM_MMIO_SIZE 8 | ||
38 | #endif | ||
39 | |||
40 | /* | 36 | /* |
41 | * The bit 16 ~ bit 31 of kvm_memory_region::flags are internally used | 37 | * The bit 16 ~ bit 31 of kvm_memory_region::flags are internally used |
42 | * in kvm, other bits are visible for userspace which are defined in | 38 | * in kvm, other bits are visible for userspace which are defined in |
@@ -200,17 +196,6 @@ int kvm_setup_async_pf(struct kvm_vcpu *vcpu, gva_t gva, unsigned long hva, | |||
200 | int kvm_async_pf_wakeup_all(struct kvm_vcpu *vcpu); | 196 | int kvm_async_pf_wakeup_all(struct kvm_vcpu *vcpu); |
201 | #endif | 197 | #endif |
202 | 198 | ||
203 | /* | ||
204 | * Carry out a gup that requires IO. Allow the mm to relinquish the mmap | ||
205 | * semaphore if the filemap/swap has to wait on a page lock. pagep == NULL | ||
206 | * controls whether we retry the gup one more time to completion in that case. | ||
207 | * Typically this is called after a FAULT_FLAG_RETRY_NOWAIT in the main tdp | ||
208 | * handler. | ||
209 | */ | ||
210 | int kvm_get_user_page_io(struct task_struct *tsk, struct mm_struct *mm, | ||
211 | unsigned long addr, bool write_fault, | ||
212 | struct page **pagep); | ||
213 | |||
214 | enum { | 199 | enum { |
215 | OUTSIDE_GUEST_MODE, | 200 | OUTSIDE_GUEST_MODE, |
216 | IN_GUEST_MODE, | 201 | IN_GUEST_MODE, |
@@ -611,6 +596,15 @@ int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext); | |||
611 | 596 | ||
612 | int kvm_get_dirty_log(struct kvm *kvm, | 597 | int kvm_get_dirty_log(struct kvm *kvm, |
613 | struct kvm_dirty_log *log, int *is_dirty); | 598 | struct kvm_dirty_log *log, int *is_dirty); |
599 | |||
600 | int kvm_get_dirty_log_protect(struct kvm *kvm, | ||
601 | struct kvm_dirty_log *log, bool *is_dirty); | ||
602 | |||
603 | void kvm_arch_mmu_enable_log_dirty_pt_masked(struct kvm *kvm, | ||
604 | struct kvm_memory_slot *slot, | ||
605 | gfn_t gfn_offset, | ||
606 | unsigned long mask); | ||
607 | |||
614 | int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm, | 608 | int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm, |
615 | struct kvm_dirty_log *log); | 609 | struct kvm_dirty_log *log); |
616 | 610 | ||
@@ -652,7 +646,7 @@ void kvm_arch_vcpu_load(struct kvm_vcpu *vcpu, int cpu); | |||
652 | void kvm_arch_vcpu_put(struct kvm_vcpu *vcpu); | 646 | void kvm_arch_vcpu_put(struct kvm_vcpu *vcpu); |
653 | struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm, unsigned int id); | 647 | struct kvm_vcpu *kvm_arch_vcpu_create(struct kvm *kvm, unsigned int id); |
654 | int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu); | 648 | int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu); |
655 | int kvm_arch_vcpu_postcreate(struct kvm_vcpu *vcpu); | 649 | void kvm_arch_vcpu_postcreate(struct kvm_vcpu *vcpu); |
656 | void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu); | 650 | void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu); |
657 | 651 | ||
658 | int kvm_arch_hardware_enable(void); | 652 | int kvm_arch_hardware_enable(void); |
@@ -1042,6 +1036,8 @@ void kvm_unregister_device_ops(u32 type); | |||
1042 | 1036 | ||
1043 | extern struct kvm_device_ops kvm_mpic_ops; | 1037 | extern struct kvm_device_ops kvm_mpic_ops; |
1044 | extern struct kvm_device_ops kvm_xics_ops; | 1038 | extern struct kvm_device_ops kvm_xics_ops; |
1039 | extern struct kvm_device_ops kvm_arm_vgic_v2_ops; | ||
1040 | extern struct kvm_device_ops kvm_arm_vgic_v3_ops; | ||
1045 | 1041 | ||
1046 | #ifdef CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT | 1042 | #ifdef CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT |
1047 | 1043 | ||