* [PATCH] KVM: Remove obsolete kvm_unmap_hva notifier backend
@ 2018-08-23 15:38 Marc Zyngier
2018-08-23 16:27 ` Paolo Bonzini
0 siblings, 1 reply; 2+ messages in thread
From: Marc Zyngier @ 2018-08-23 15:38 UTC (permalink / raw)
To: linux-arm-kernel
kvm_unmap_hva is long gone, and we only have kvm_unmap_hva_range to
deal with. Drop the now obsolete code.
Fixes: fb1522e099f0 ("KVM: update to new mmu_notifier semantic v2")
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
---
arch/arm/include/asm/kvm_host.h | 1 -
arch/arm64/include/asm/kvm_host.h | 1 -
arch/mips/include/asm/kvm_host.h | 1 -
arch/mips/kvm/mmu.c | 10 ----------
arch/x86/include/asm/kvm_host.h | 1 -
arch/x86/kvm/mmu.c | 5 -----
virt/kvm/arm/mmu.c | 12 ------------
virt/kvm/arm/trace.h | 15 ---------------
8 files changed, 46 deletions(-)
diff --git a/arch/arm/include/asm/kvm_host.h b/arch/arm/include/asm/kvm_host.h
index 1f1fe4109b02..dd282cc54e45 100644
--- a/arch/arm/include/asm/kvm_host.h
+++ b/arch/arm/include/asm/kvm_host.h
@@ -218,7 +218,6 @@ unsigned long kvm_call_hyp(void *hypfn, ...);
void force_vm_exit(const cpumask_t *mask);
#define KVM_ARCH_WANT_MMU_NOTIFIER
-int kvm_unmap_hva(struct kvm *kvm, unsigned long hva);
int kvm_unmap_hva_range(struct kvm *kvm,
unsigned long start, unsigned long end);
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 fe8777b12f86..d6c68cf4f264 100644
--- a/arch/arm64/include/asm/kvm_host.h
+++ b/arch/arm64/include/asm/kvm_host.h
@@ -352,7 +352,6 @@ int kvm_arm_get_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg);
int kvm_arm_set_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg);
#define KVM_ARCH_WANT_MMU_NOTIFIER
-int kvm_unmap_hva(struct kvm *kvm, unsigned long hva);
int kvm_unmap_hva_range(struct kvm *kvm,
unsigned long start, unsigned long end);
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,
bool write);
#define KVM_ARCH_WANT_MMU_NOTIFIER
-int kvm_unmap_hva(struct kvm *kvm, unsigned long hva);
int kvm_unmap_hva_range(struct kvm *kvm,
unsigned long start, unsigned long end);
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,
return 1;
}
-int kvm_unmap_hva(struct kvm *kvm, unsigned long hva)
-{
- unsigned long end = hva + PAGE_SIZE;
-
- handle_hva_to_gpa(kvm, hva, end, &kvm_unmap_hva_handler, NULL);
-
- kvm_mips_callbacks->flush_shadow_all(kvm);
- return 0;
-}
-
int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end)
{
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 c13cd28d9d1b..9bf27626c167 100644
--- a/arch/x86/include/asm/kvm_host.h
+++ b/arch/x86/include/asm/kvm_host.h
@@ -1401,7 +1401,6 @@ asmlinkage void kvm_spurious_fault(void);
____kvm_handle_fault_on_reboot(insn, "")
#define KVM_ARCH_WANT_MMU_NOTIFIER
-int kvm_unmap_hva(struct kvm *kvm, unsigned long hva);
int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end);
int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end);
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 6b8f11521c41..0182a4ee799c 100644
--- a/arch/x86/kvm/mmu.c
+++ b/arch/x86/kvm/mmu.c
@@ -1801,11 +1801,6 @@ static int kvm_handle_hva(struct kvm *kvm, unsigned long hva,
return kvm_handle_hva_range(kvm, hva, hva + 1, data, handler);
}
-int kvm_unmap_hva(struct kvm *kvm, unsigned long hva)
-{
- return kvm_handle_hva(kvm, hva, 0, kvm_unmap_rmapp);
-}
-
int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end)
{
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 287c8e274655..b5b9746af23c 100644
--- a/virt/kvm/arm/mmu.c
+++ b/virt/kvm/arm/mmu.c
@@ -1768,18 +1768,6 @@ static int kvm_unmap_hva_handler(struct kvm *kvm, gpa_t gpa, u64 size, void *dat
return 0;
}
-int kvm_unmap_hva(struct kvm *kvm, unsigned long hva)
-{
- unsigned long end = hva + PAGE_SIZE;
-
- if (!kvm->arch.pgd)
- return 0;
-
- trace_kvm_unmap_hva(hva);
- handle_hva_to_gpa(kvm, hva, end, &kvm_unmap_hva_handler, NULL);
- return 0;
-}
-
int kvm_unmap_hva_range(struct kvm *kvm,
unsigned long start, unsigned long end)
{
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,
__entry->vcpu_pc, __entry->instr, __entry->cpsr)
);
-TRACE_EVENT(kvm_unmap_hva,
- TP_PROTO(unsigned long hva),
- TP_ARGS(hva),
-
- TP_STRUCT__entry(
- __field( unsigned long, hva )
- ),
-
- TP_fast_assign(
- __entry->hva = hva;
- ),
-
- TP_printk("mmu notifier unmap hva: %#08lx", __entry->hva)
-);
-
TRACE_EVENT(kvm_unmap_hva_range,
TP_PROTO(unsigned long start, unsigned long end),
TP_ARGS(start, end),
--
2.18.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH] KVM: Remove obsolete kvm_unmap_hva notifier backend
2018-08-23 15:38 [PATCH] KVM: Remove obsolete kvm_unmap_hva notifier backend Marc Zyngier
@ 2018-08-23 16:27 ` Paolo Bonzini
0 siblings, 0 replies; 2+ messages in thread
From: Paolo Bonzini @ 2018-08-23 16:27 UTC (permalink / raw)
To: linux-arm-kernel
On 23/08/2018 17:38, Marc Zyngier wrote:
> kvm_unmap_hva is long gone, and we only have kvm_unmap_hva_range to
> deal with. Drop the now obsolete code.
>
> Fixes: fb1522e099f0 ("KVM: update to new mmu_notifier semantic v2")
> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> ---
> arch/arm/include/asm/kvm_host.h | 1 -
> arch/arm64/include/asm/kvm_host.h | 1 -
> arch/mips/include/asm/kvm_host.h | 1 -
> arch/mips/kvm/mmu.c | 10 ----------
> arch/x86/include/asm/kvm_host.h | 1 -
> arch/x86/kvm/mmu.c | 5 -----
> virt/kvm/arm/mmu.c | 12 ------------
> virt/kvm/arm/trace.h | 15 ---------------
> 8 files changed, 46 deletions(-)
>
> diff --git a/arch/arm/include/asm/kvm_host.h b/arch/arm/include/asm/kvm_host.h
> index 1f1fe4109b02..dd282cc54e45 100644
> --- a/arch/arm/include/asm/kvm_host.h
> +++ b/arch/arm/include/asm/kvm_host.h
> @@ -218,7 +218,6 @@ unsigned long kvm_call_hyp(void *hypfn, ...);
> void force_vm_exit(const cpumask_t *mask);
>
> #define KVM_ARCH_WANT_MMU_NOTIFIER
> -int kvm_unmap_hva(struct kvm *kvm, unsigned long hva);
> int kvm_unmap_hva_range(struct kvm *kvm,
> unsigned long start, unsigned long end);
> 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 fe8777b12f86..d6c68cf4f264 100644
> --- a/arch/arm64/include/asm/kvm_host.h
> +++ b/arch/arm64/include/asm/kvm_host.h
> @@ -352,7 +352,6 @@ int kvm_arm_get_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg);
> int kvm_arm_set_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg);
>
> #define KVM_ARCH_WANT_MMU_NOTIFIER
> -int kvm_unmap_hva(struct kvm *kvm, unsigned long hva);
> int kvm_unmap_hva_range(struct kvm *kvm,
> unsigned long start, unsigned long end);
> 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,
> bool write);
>
> #define KVM_ARCH_WANT_MMU_NOTIFIER
> -int kvm_unmap_hva(struct kvm *kvm, unsigned long hva);
> int kvm_unmap_hva_range(struct kvm *kvm,
> unsigned long start, unsigned long end);
> 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,
> return 1;
> }
>
> -int kvm_unmap_hva(struct kvm *kvm, unsigned long hva)
> -{
> - unsigned long end = hva + PAGE_SIZE;
> -
> - handle_hva_to_gpa(kvm, hva, end, &kvm_unmap_hva_handler, NULL);
> -
> - kvm_mips_callbacks->flush_shadow_all(kvm);
> - return 0;
> -}
> -
> int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end)
> {
> 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 c13cd28d9d1b..9bf27626c167 100644
> --- a/arch/x86/include/asm/kvm_host.h
> +++ b/arch/x86/include/asm/kvm_host.h
> @@ -1401,7 +1401,6 @@ asmlinkage void kvm_spurious_fault(void);
> ____kvm_handle_fault_on_reboot(insn, "")
>
> #define KVM_ARCH_WANT_MMU_NOTIFIER
> -int kvm_unmap_hva(struct kvm *kvm, unsigned long hva);
> int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end);
> int kvm_age_hva(struct kvm *kvm, unsigned long start, unsigned long end);
> 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 6b8f11521c41..0182a4ee799c 100644
> --- a/arch/x86/kvm/mmu.c
> +++ b/arch/x86/kvm/mmu.c
> @@ -1801,11 +1801,6 @@ static int kvm_handle_hva(struct kvm *kvm, unsigned long hva,
> return kvm_handle_hva_range(kvm, hva, hva + 1, data, handler);
> }
>
> -int kvm_unmap_hva(struct kvm *kvm, unsigned long hva)
> -{
> - return kvm_handle_hva(kvm, hva, 0, kvm_unmap_rmapp);
> -}
> -
> int kvm_unmap_hva_range(struct kvm *kvm, unsigned long start, unsigned long end)
> {
> 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 287c8e274655..b5b9746af23c 100644
> --- a/virt/kvm/arm/mmu.c
> +++ b/virt/kvm/arm/mmu.c
> @@ -1768,18 +1768,6 @@ static int kvm_unmap_hva_handler(struct kvm *kvm, gpa_t gpa, u64 size, void *dat
> return 0;
> }
>
> -int kvm_unmap_hva(struct kvm *kvm, unsigned long hva)
> -{
> - unsigned long end = hva + PAGE_SIZE;
> -
> - if (!kvm->arch.pgd)
> - return 0;
> -
> - trace_kvm_unmap_hva(hva);
> - handle_hva_to_gpa(kvm, hva, end, &kvm_unmap_hva_handler, NULL);
> - return 0;
> -}
> -
> int kvm_unmap_hva_range(struct kvm *kvm,
> unsigned long start, unsigned long end)
> {
> 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,
> __entry->vcpu_pc, __entry->instr, __entry->cpsr)
> );
>
> -TRACE_EVENT(kvm_unmap_hva,
> - TP_PROTO(unsigned long hva),
> - TP_ARGS(hva),
> -
> - TP_STRUCT__entry(
> - __field( unsigned long, hva )
> - ),
> -
> - TP_fast_assign(
> - __entry->hva = hva;
> - ),
> -
> - TP_printk("mmu notifier unmap hva: %#08lx", __entry->hva)
> -);
> -
> TRACE_EVENT(kvm_unmap_hva_range,
> TP_PROTO(unsigned long start, unsigned long end),
> TP_ARGS(start, end),
>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-08-23 16:27 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-23 15:38 [PATCH] KVM: Remove obsolete kvm_unmap_hva notifier backend Marc Zyngier
2018-08-23 16:27 ` Paolo Bonzini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).