drm/i915/gvt: Use KVM r/w to access guest opregion
authorTina Zhang <tina.zhang@intel.com>
Wed, 31 Jan 2018 06:42:44 +0000 (14:42 +0800)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Tue, 6 Feb 2018 19:41:34 +0000 (11:41 -0800)
commit95925b9595d95fdf2bfb73fc73dfb696f0c3fc7f
treec1da423cf5d1ccdd43dd3e0474a0b67634f15763
parentd480b28a41a628e356dbacfa1c9f6d05b9baf838
drm/i915/gvt: Use KVM r/w to access guest opregion

For KVMGT, the guest opregion, which is handled by VFIO, is actually a
piece of guest memory which won't be accessed by devices. So, its mfn
shouldn't be obtained through VFIO interface. This patch uses KVM r/w
interface to access the data in guest opregion.

Fix the guest opregion accessing issue when host "intel_iommu=on".

v3:
- Remove mapped flag for KVM/VFIO usage, as it's useless for KVM.

v2:
- Set the gpa correctly when invoking KVM r/w operations. (Zhenyu)

Signed-off-by: Tina Zhang <tina.zhang@intel.com>
Cc: Yan Zhao <yan.y.zhao@intel.com>
Cc: Xiong Zhang <xiong.y.zhang@intel.com>
Signed-off-by: Zhi Wang <zhi.a.wang@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/i915/gvt/gvt.h
drivers/gpu/drm/i915/gvt/opregion.c