diff options
| -rw-r--r-- | arch/arm/include/asm/kvm_host.h | 1 | ||||
| -rw-r--r-- | arch/arm64/include/asm/kvm_host.h | 1 | ||||
| -rw-r--r-- | arch/mips/include/asm/kvm_host.h | 1 | ||||
| -rw-r--r-- | arch/mips/kvm/mmu.c | 10 | ||||
| -rw-r--r-- | arch/x86/include/asm/kvm_host.h | 1 | ||||
| -rw-r--r-- | arch/x86/kvm/mmu.c | 5 | ||||
| -rw-r--r-- | virt/kvm/arm/mmu.c | 12 | ||||
| -rw-r--r-- | virt/kvm/arm/trace.h | 15 |
8 files changed, 0 insertions, 46 deletions
diff --git a/arch/arm/include/asm/kvm_host.h b/arch/arm/include/asm/kvm_host.h index 79906cecb091..3ad482d2f1eb 100644 --- a/arch/arm/include/asm/kvm_host.h +++ b/arch/arm/include/asm/kvm_host.h | |||
| @@ -223,7 +223,6 @@ int __kvm_arm_vcpu_set_events(struct kvm_vcpu *vcpu, | |||
| 223 | struct kvm_vcpu_events *events); | 223 | struct kvm_vcpu_events *events); |
| 224 | 224 | ||
| 225 | #define KVM_ARCH_WANT_MMU_NOTIFIER | 225 | #define KVM_ARCH_WANT_MMU_NOTIFIER |
| 226 | int kvm_unmap_hva(struct kvm *kvm, unsigned long hva); | ||
| 227 | int kvm_unmap_hva_range(struct kvm *kvm, | 226 | int kvm_unmap_hva_range(struct kvm *kvm, |
| 228 | unsigned long start, unsigned long end); | 227 | unsigned long start, unsigned long end); |
| 229 | void kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); | 228 | void kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); |
diff --git a/arch/arm64/include/asm/kvm_host.h b/arch/arm64/include/asm/kvm_host.h index f26055f2306e..8e6d46df38aa 100644 --- a/arch/arm64/include/asm/kvm_host.h +++ b/arch/arm64/include/asm/kvm_host.h | |||
| @@ -357,7 +357,6 @@ int __kvm_arm_vcpu_set_events(struct kvm_vcpu *vcpu, | |||
| 357 | struct kvm_vcpu_events *events); | 357 | struct kvm_vcpu_events *events); |
| 358 | 358 | ||
| 359 | #define KVM_ARCH_WANT_MMU_NOTIFIER | 359 | #define KVM_ARCH_WANT_MMU_NOTIFIER |
| 360 | int kvm_unmap_hva(struct kvm *kvm, unsigned long hva); | ||
| 361 | int kvm_unmap_hva_range(struct kvm *kvm, | 360 | int kvm_unmap_hva_range(struct kvm *kvm, |
| 362 | unsigned long start, unsigned long end); | 361 | unsigned long start, unsigned long end); |
| 363 | void kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); | 362 | void kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); |
diff --git a/arch/mips/include/asm/kvm_host.h b/arch/mips/include/asm/kvm_host.h index a9af1d2dcd69..2c1c53d12179 100644 --- a/arch/mips/include/asm/kvm_host.h +++ b/arch/mips/include/asm/kvm_host.h | |||
| @@ -931,7 +931,6 @@ enum kvm_mips_fault_result kvm_trap_emul_gva_fault(struct kvm_vcpu *vcpu, | |||
| 931 | bool write); | 931 | bool write); |
| 932 | 932 | ||
| 933 | #define KVM_ARCH_WANT_MMU_NOTIFIER | 933 | #define KVM_ARCH_WANT_MMU_NOTIFIER |
| 934 | int kvm_unmap_hva(struct kvm *kvm, unsigned long hva); | ||
| 935 | int kvm_unmap_hva_range(struct kvm *kvm, | 934 | int kvm_unmap_hva_range(struct kvm *kvm, |
| 936 | unsigned long start, unsigned long end); | 935 | unsigned long start, unsigned long end); |
| 937 | void kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); | 936 | void kvm_set_spte_hva(struct kvm *kvm, unsigned long hva, pte_t pte); |
diff --git a/arch/mips/kvm/mmu.c b/arch/mips/kvm/mmu.c index ee64db032793..d8dcdb350405 100644 --- a/arch/mips/kvm/mmu.c +++ b/arch/mips/kvm/mmu.c | |||
| @@ -512,16 +512,6 @@ static int kvm_unmap_hva_handler(struct kvm *kvm, gfn_t gfn, gfn_t gfn_end, | |||
| 512 | return 1; | 512 | return 1; |
| 513 | } | 513 | } |
| 514 | 514 | ||
| 515 | int kvm_unmap_hva(struct kvm *kvm, unsigned long hva) | ||
| 516 | { | ||
| 517 | unsigned long end = hva + PAGE_SIZE; | ||
| 518 | |||
| 519 | handle_hva_to_gpa(kvm, hva, end, &kvm_unmap_hva_handler, NULL); | ||
| 520 | |||
| 521 | kvm_mips_callbacks->flush_shadow_all(kvm); | ||
| 522 | return 0; | ||
| 523 | } | ||
| 524 | |||
| 525 | int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end) | 515 | int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end) |
| 526 | { | 516 | { |
| 527 | handle_hva_to_gpa(kvm, start, end, &kvm_unmap_hva_handler, NULL); | 517 | handle_hva_to_gpa(kvm, start, end, &kvm_unmap_hva_handler, NULL); |
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index 00ddb0c9e612..e6a33420b871 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h | |||
| @@ -1450,7 +1450,6 @@ asmlinkage void kvm_spurious_fault(void); | |||
| 1450 | ____kvm_handle_fault_on_reboot(insn, "") | 1450 | ____kvm_handle_fault_on_reboot(insn, "") |
| 1451 | 1451 | ||
| 1452 | #define KVM_ARCH_WANT_MMU_NOTIFIER | 1452 | #define KVM_ARCH_WANT_MMU_NOTIFIER |
| 1453 | int kvm_unmap_hva(struct kvm *kvm, unsigned long hva); | ||
| 1454 | int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end); | 1453 | int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end); |
| 1455 | int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end); | 1454 | int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end); |
| 1456 | int kvm_test_age_hva(struct kvm *kvm, unsigned long hva); | 1455 | int kvm_test_age_hva(struct kvm *kvm, unsigned long hva); |
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c index a282321329b5..d440154e8938 100644 --- a/arch/x86/kvm/mmu.c +++ b/arch/x86/kvm/mmu.c | |||
| @@ -1853,11 +1853,6 @@ static int kvm_handle_hva(struct kvm *kvm, unsigned long hva, | |||
| 1853 | return kvm_handle_hva_range(kvm, hva, hva + 1, data, handler); | 1853 | return kvm_handle_hva_range(kvm, hva, hva + 1, data, handler); |
| 1854 | } | 1854 | } |
| 1855 | 1855 | ||
| 1856 | int kvm_unmap_hva(struct kvm *kvm, unsigned long hva) | ||
| 1857 | { | ||
| 1858 | return kvm_handle_hva(kvm, hva, 0, kvm_unmap_rmapp); | ||
| 1859 | } | ||
| 1860 | |||
| 1861 | int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end) | 1856 | int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end) |
| 1862 | { | 1857 | { |
| 1863 | return kvm_handle_hva_range(kvm, start, end, 0, kvm_unmap_rmapp); | 1858 | return kvm_handle_hva_range(kvm, start, end, 0, kvm_unmap_rmapp); |
diff --git a/virt/kvm/arm/mmu.c b/virt/kvm/arm/mmu.c index 111a660be3be..ed162a6c57c5 100644 --- a/virt/kvm/arm/mmu.c +++ b/virt/kvm/arm/mmu.c | |||
| @@ -1817,18 +1817,6 @@ static int kvm_unmap_hva_handler(struct kvm *kvm, gpa_t gpa, u64 size, void *dat | |||
| 1817 | return 0; | 1817 | return 0; |
| 1818 | } | 1818 | } |
| 1819 | 1819 | ||
| 1820 | int kvm_unmap_hva(struct kvm *kvm, unsigned long hva) | ||
| 1821 | { | ||
| 1822 | unsigned long end = hva + PAGE_SIZE; | ||
| 1823 | |||
| 1824 | if (!kvm->arch.pgd) | ||
| 1825 | return 0; | ||
| 1826 | |||
| 1827 | trace_kvm_unmap_hva(hva); | ||
| 1828 | handle_hva_to_gpa(kvm, hva, end, &kvm_unmap_hva_handler, NULL); | ||
| 1829 | return 0; | ||
| 1830 | } | ||
| 1831 | |||
| 1832 | int kvm_unmap_hva_range(struct kvm *kvm, | 1820 | int kvm_unmap_hva_range(struct kvm *kvm, |
| 1833 | unsigned long start, unsigned long end) | 1821 | unsigned long start, unsigned long end) |
| 1834 | { | 1822 | { |
diff --git a/virt/kvm/arm/trace.h b/virt/kvm/arm/trace.h index e53b596f483b..57b3edebbb40 100644 --- a/virt/kvm/arm/trace.h +++ b/virt/kvm/arm/trace.h | |||
| @@ -134,21 +134,6 @@ TRACE_EVENT(kvm_mmio_emulate, | |||
| 134 | __entry->vcpu_pc, __entry->instr, __entry->cpsr) | 134 | __entry->vcpu_pc, __entry->instr, __entry->cpsr) |
| 135 | ); | 135 | ); |
| 136 | 136 | ||
| 137 | TRACE_EVENT(kvm_unmap_hva, | ||
| 138 | TP_PROTO(unsigned long hva), | ||
| 139 | TP_ARGS(hva), | ||
| 140 | |||
| 141 | TP_STRUCT__entry( | ||
| 142 | __field( unsigned long, hva ) | ||
| 143 | ), | ||
| 144 | |||
| 145 | TP_fast_assign( | ||
| 146 | __entry->hva = hva; | ||
| 147 | ), | ||
| 148 | |||
| 149 | TP_printk("mmu notifier unmap hva: %#08lx", __entry->hva) | ||
| 150 | ); | ||
| 151 | |||
| 152 | TRACE_EVENT(kvm_unmap_hva_range, | 137 | TRACE_EVENT(kvm_unmap_hva_range, |
| 153 | TP_PROTO(unsigned long start, unsigned long end), | 138 | TP_PROTO(unsigned long start, unsigned long end), |
| 154 | TP_ARGS(start, end), | 139 | TP_ARGS(start, end), |
