From 9dd6ef600d3f32f7f727f0a6ab16b90fe606b9ff Mon Sep 17 00:00:00 2001 From: Junming Liu Date: Thu, 14 Nov 2019 22:51:13 +0000 Subject: [PATCH] Always disable the iommu_snoop when enabling the IOMMU for GPU The IOMMU for GPU doesn't support the snoop_control. So the iommu_snoop is disabled. This can fix the issue of consolefb in SOS. Signed-off-by: Junming Liu Tracked-On: #4360 --- hypervisor/arch/x86/vtd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hypervisor/arch/x86/vtd.c b/hypervisor/arch/x86/vtd.c index 987ba2e8c..fff595a62 100644 --- a/hypervisor/arch/x86/vtd.c +++ b/hypervisor/arch/x86/vtd.c @@ -184,7 +184,7 @@ bool iommu_snoop_supported(const struct iommu_domain *iommu) bool ret; if ((iommu == NULL) || (iommu->iommu_snoop)) { - ret = true; + ret = false; } else { ret = false; } @@ -1263,7 +1263,7 @@ struct iommu_domain *create_iommu_domain(uint16_t vm_id, uint64_t translation_ta domain->trans_table_ptr = translation_table; domain->addr_width = addr_width; domain->is_tt_ept = true; - domain->iommu_snoop = true; + domain->iommu_snoop = false; dev_dbg(ACRN_DBG_IOMMU, "create domain [%d]: vm_id = %hu, ept@0x%x", vmid_to_domainid(domain->vm_id), domain->vm_id, domain->trans_table_ptr);