diff --git a/arch/loongarch/kvm/mmu.c b/arch/loongarch/kvm/mmu.c index 7fa477a28ee152ad2727d61c10aeec203607b09f..948f43ecd0140daf404a96360d14d56a0d3e6a40 100644 --- a/arch/loongarch/kvm/mmu.c +++ b/arch/loongarch/kvm/mmu.c @@ -913,7 +913,7 @@ static int kvm_map_page(struct kvm_vcpu *vcpu, unsigned long gpa, bool write) * in the fast path kvm_map_page_fast for page table processing */ prot_bits = kvm_pte_mkwrite(prot_bits); - if (write) + if (write || !kvm_slot_dirty_track_enabled(memslot)) prot_bits = kvm_pte_mkdirty(prot_bits); }