diff --git a/[refs] b/[refs] index e4f05e07d277..5f370b6d589f 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 261874b0d5ebe2a5ccc544df7170d6559635e79a +refs/heads/master: d47510e295c0f82699192a61d715351cf00f65de diff --git a/trunk/virt/kvm/iommu.c b/trunk/virt/kvm/iommu.c index 4a340cb23013..72a130bc448a 100644 --- a/trunk/virt/kvm/iommu.c +++ b/trunk/virt/kvm/iommu.c @@ -76,7 +76,9 @@ int kvm_iommu_map_pages(struct kvm *kvm, struct kvm_memory_slot *slot) gfn = slot->base_gfn; end_gfn = gfn + slot->npages; - flags = IOMMU_READ | IOMMU_WRITE; + flags = IOMMU_READ; + if (!(slot->flags & KVM_MEM_READONLY)) + flags |= IOMMU_WRITE; if (kvm->arch.iommu_flags & KVM_IOMMU_CACHE_COHERENCY) flags |= IOMMU_CACHE;