diff options
Diffstat (limited to 'virt')
-rw-r--r-- | virt/kvm/iommu.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/virt/kvm/iommu.c b/virt/kvm/iommu.c index 4a340cb23013..72a130bc448a 100644 --- a/virt/kvm/iommu.c +++ b/virt/kvm/iommu.c | |||
@@ -76,7 +76,9 @@ int kvm_iommu_map_pages(struct kvm *kvm, struct kvm_memory_slot *slot) | |||
76 | gfn = slot->base_gfn; | 76 | gfn = slot->base_gfn; |
77 | end_gfn = gfn + slot->npages; | 77 | end_gfn = gfn + slot->npages; |
78 | 78 | ||
79 | flags = IOMMU_READ | IOMMU_WRITE; | 79 | flags = IOMMU_READ; |
80 | if (!(slot->flags & KVM_MEM_READONLY)) | ||
81 | flags |= IOMMU_WRITE; | ||
80 | if (kvm->arch.iommu_flags & KVM_IOMMU_CACHE_COHERENCY) | 82 | if (kvm->arch.iommu_flags & KVM_IOMMU_CACHE_COHERENCY) |
81 | flags |= IOMMU_CACHE; | 83 | flags |= IOMMU_CACHE; |
82 | 84 | ||