Re: [PATCH 1/4] KVM: constify kvm_arch_flush_remote_tlbs_memslot

2021-04-02 Thread Huacai Chen
Reviewed-by: Huacai Chen 

On Fri, Apr 2, 2021 at 11:58 PM Paolo Bonzini  wrote:
>
> memslots are stored in RCU and there should be no need to
> change them.
>
> Signed-off-by: Paolo Bonzini 
> ---
>  arch/arm64/kvm/arm.c | 2 +-
>  arch/mips/kvm/mips.c | 2 +-
>  arch/x86/kvm/mmu/mmu.c   | 2 +-
>  include/linux/kvm_host.h | 2 +-
>  4 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c
> index 7f06ba76698d..9141730b7963 100644
> --- a/arch/arm64/kvm/arm.c
> +++ b/arch/arm64/kvm/arm.c
> @@ -1268,7 +1268,7 @@ void kvm_arch_sync_dirty_log(struct kvm *kvm, struct 
> kvm_memory_slot *memslot)
>  }
>
>  void kvm_arch_flush_remote_tlbs_memslot(struct kvm *kvm,
> -   struct kvm_memory_slot *memslot)
> +   const struct kvm_memory_slot *memslot)
>  {
> kvm_flush_remote_tlbs(kvm);
>  }
> diff --git a/arch/mips/kvm/mips.c b/arch/mips/kvm/mips.c
> index 58a8812e2fa5..7db8234a4407 100644
> --- a/arch/mips/kvm/mips.c
> +++ b/arch/mips/kvm/mips.c
> @@ -997,7 +997,7 @@ void kvm_arch_sync_dirty_log(struct kvm *kvm, struct 
> kvm_memory_slot *memslot)
>  }
>
>  void kvm_arch_flush_remote_tlbs_memslot(struct kvm *kvm,
> -   struct kvm_memory_slot *memslot)
> +   const struct kvm_memory_slot *memslot)
>  {
> /* Let implementation handle TLB/GVA invalidation */
> kvm_mips_callbacks->flush_shadow_memslot(kvm, memslot);
> diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c
> index 0d92a269c5fa..f75c677910c9 100644
> --- a/arch/x86/kvm/mmu/mmu.c
> +++ b/arch/x86/kvm/mmu/mmu.c
> @@ -5616,7 +5616,7 @@ void kvm_mmu_zap_collapsible_sptes(struct kvm *kvm,
>  }
>
>  void kvm_arch_flush_remote_tlbs_memslot(struct kvm *kvm,
> -   struct kvm_memory_slot *memslot)
> +   const struct kvm_memory_slot *memslot)
>  {
> /*
>  * All current use cases for flushing the TLBs for a specific memslot
> diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
> index e6d77353025c..34a974ffc882 100644
> --- a/include/linux/kvm_host.h
> +++ b/include/linux/kvm_host.h
> @@ -894,7 +894,7 @@ void kvm_arch_sync_dirty_log(struct kvm *kvm, struct 
> kvm_memory_slot *memslot);
>
>  #ifdef CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT
>  void kvm_arch_flush_remote_tlbs_memslot(struct kvm *kvm,
> -   struct kvm_memory_slot *memslot);
> +   const struct kvm_memory_slot 
> *memslot);
>  #else /* !CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT */
>  int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log);
>  int kvm_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log,
> --
> 2.30.1
>
>


[PATCH 1/4] KVM: constify kvm_arch_flush_remote_tlbs_memslot

2021-04-02 Thread Paolo Bonzini
memslots are stored in RCU and there should be no need to
change them.

Signed-off-by: Paolo Bonzini 
---
 arch/arm64/kvm/arm.c | 2 +-
 arch/mips/kvm/mips.c | 2 +-
 arch/x86/kvm/mmu/mmu.c   | 2 +-
 include/linux/kvm_host.h | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c
index 7f06ba76698d..9141730b7963 100644
--- a/arch/arm64/kvm/arm.c
+++ b/arch/arm64/kvm/arm.c
@@ -1268,7 +1268,7 @@ void kvm_arch_sync_dirty_log(struct kvm *kvm, struct 
kvm_memory_slot *memslot)
 }
 
 void kvm_arch_flush_remote_tlbs_memslot(struct kvm *kvm,
-   struct kvm_memory_slot *memslot)
+   const struct kvm_memory_slot *memslot)
 {
kvm_flush_remote_tlbs(kvm);
 }
diff --git a/arch/mips/kvm/mips.c b/arch/mips/kvm/mips.c
index 58a8812e2fa5..7db8234a4407 100644
--- a/arch/mips/kvm/mips.c
+++ b/arch/mips/kvm/mips.c
@@ -997,7 +997,7 @@ void kvm_arch_sync_dirty_log(struct kvm *kvm, struct 
kvm_memory_slot *memslot)
 }
 
 void kvm_arch_flush_remote_tlbs_memslot(struct kvm *kvm,
-   struct kvm_memory_slot *memslot)
+   const struct kvm_memory_slot *memslot)
 {
/* Let implementation handle TLB/GVA invalidation */
kvm_mips_callbacks->flush_shadow_memslot(kvm, memslot);
diff --git a/arch/x86/kvm/mmu/mmu.c b/arch/x86/kvm/mmu/mmu.c
index 0d92a269c5fa..f75c677910c9 100644
--- a/arch/x86/kvm/mmu/mmu.c
+++ b/arch/x86/kvm/mmu/mmu.c
@@ -5616,7 +5616,7 @@ void kvm_mmu_zap_collapsible_sptes(struct kvm *kvm,
 }
 
 void kvm_arch_flush_remote_tlbs_memslot(struct kvm *kvm,
-   struct kvm_memory_slot *memslot)
+   const struct kvm_memory_slot *memslot)
 {
/*
 * All current use cases for flushing the TLBs for a specific memslot
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index e6d77353025c..34a974ffc882 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -894,7 +894,7 @@ void kvm_arch_sync_dirty_log(struct kvm *kvm, struct 
kvm_memory_slot *memslot);
 
 #ifdef CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT
 void kvm_arch_flush_remote_tlbs_memslot(struct kvm *kvm,
-   struct kvm_memory_slot *memslot);
+   const struct kvm_memory_slot *memslot);
 #else /* !CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT */
 int kvm_vm_ioctl_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log);
 int kvm_get_dirty_log(struct kvm *kvm, struct kvm_dirty_log *log,
-- 
2.30.1