hv: More changes to enable GPU passthru

Snoop control is not supported in the graphics VT-d engine and so should
be disabled in the PTEs. Also enabled iommu for graphics in the
dmar_drhd array.

v2: removed disable iommu in handle_one_drhd and combined if cond.
v3: minor code review changes
v4: moved the snoop control change to ept.c to accomodate upstream changes
Signed-off-by: Anitha Chrisanthus <anitha.chrisanthus@intel.com>
Reviewed-by: Gong Zhipeng <zhipeng.gong@intel.com>
This commit is contained in:
Anitha Chrisanthus
2018-06-12 03:49:05 -07:00
committed by Xie, nanlin
parent 9d4cc5c11d
commit 8d50d40ff8
6 changed files with 11 additions and 12 deletions

View File

@@ -489,7 +489,7 @@ int ept_mmap(struct vm *vm, uint64_t hpa,
* to force snooping of PCIe devices if the page
* is cachable
*/
if ((prot & IA32E_EPT_MT_MASK) != IA32E_EPT_UNCACHED)
if ((prot & IA32E_EPT_MT_MASK) != IA32E_EPT_UNCACHED && iommu_snoop)
prot |= IA32E_EPT_SNOOP_CTRL;
map_mem(&map_params, (void *)hpa,
(void *)gpa, size, prot);