KVM: x86: remove unnecessary rmap walk of read-only memslots

There's no write access to remove.  An existing memslot cannot be updated
to set or clear KVM_MEM_READONLY, and any mappings established in a newly
created or moved read-only memslot will already be read-only.

Signed-off-by: Anthony Yznaga <anthony.yznaga@oracle.com>
Message-Id: <1591128450-11977-2-git-send-email-anthony.yznaga@oracle.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Anthony Yznaga 2020-06-02 13:07:28 -07:00 committed by Paolo Bonzini
parent 7ec28e264f
commit 5688fed649
1 changed files with 2 additions and 4 deletions

View File

@ -10142,11 +10142,9 @@ int kvm_arch_prepare_memory_region(struct kvm *kvm,
static void kvm_mmu_slot_apply_flags(struct kvm *kvm,
struct kvm_memory_slot *new)
{
/* Still write protect RO slot */
if (new->flags & KVM_MEM_READONLY) {
kvm_mmu_slot_remove_write_access(kvm, new, PG_LEVEL_4K);
/* Nothing to do for RO slots */
if (new->flags & KVM_MEM_READONLY)
return;
}
/*
* Call kvm_x86_ops dirty logging hooks when they are valid.