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@xxxxxxxxxx> --- arch/x86/kvm/x86.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index c17e6eb9ad43..23fd888e52ee 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -10038,11 +10038,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, PT_PAGE_TABLE_LEVEL); + /* Nothing to do for RO slots */ + if (new->flags & KVM_MEM_READONLY) return; - } /* * Call kvm_x86_ops dirty logging hooks when they are valid. -- 2.13.3