Skip to content

Commit

Permalink
drm/i915/gvt: Return error at the failure of finding page_track
Browse files Browse the repository at this point in the history
In XenGT, ioreq copy is used to trap mmio write and ppgtt write. Both
of them are memory write, ioreq handler couldn't distinguish them. So
ioreq handler probe the ppgtt write handler, if it is succuess, this
ioreq is ppgtt write, otherwise it is mmio write.

So ppgtt write handler should return an error at the failure of finding
page track, it is fatal to implement ioreq handler in XenGT.

Signed-off-by: Xiong Zhang <xiong.y.zhang@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
  • Loading branch information
xiongzha authored and zhenyw committed Mar 6, 2018
1 parent 7e60946 commit 991ecef
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion drivers/gpu/drm/i915/gvt/page_track.c
Original file line number Diff line number Diff line change
Expand Up @@ -164,8 +164,10 @@ int intel_vgpu_page_track_handler(struct intel_vgpu *vgpu, u64 gpa,
mutex_lock(&gvt->lock);

page_track = intel_vgpu_find_page_track(vgpu, gpa >> PAGE_SHIFT);
if (!page_track)
if (!page_track) {
ret = -ENXIO;
goto out;
}

if (unlikely(vgpu->failsafe)) {
/* Remove write protection to prevent furture traps. */
Expand Down

0 comments on commit 991ecef

Please sign in to comment.