diff options
author | fred gao | 2017-09-19 09:11:28 +0200 |
---|---|---|
committer | Zhenyu Wang | 2017-11-16 04:46:51 +0100 |
commit | e011c6ce2b4fc7c577ade41485d74431a4e6ea1a (patch) | |
tree | faa451deb09b28c1d086f6c44563532f43cc3b4c /drivers/gpu/drm/i915/gvt/scheduler.c | |
parent | drm/i915/gvt: Change the return type during command scan (diff) | |
download | kernel-qcow2-linux-e011c6ce2b4fc7c577ade41485d74431a4e6ea1a.tar.gz kernel-qcow2-linux-e011c6ce2b4fc7c577ade41485d74431a4e6ea1a.tar.xz kernel-qcow2-linux-e011c6ce2b4fc7c577ade41485d74431a4e6ea1a.zip |
drm/i915/gvt: Add VM healthy check for workload_thread
When a scan error occurs in dispatch_workload, this patch is to
check the healthy state and free all the queued workloads before
the failsafe mode is entered.
Signed-off-by: fred gao <fred.gao@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/gvt/scheduler.c')
-rw-r--r-- | drivers/gpu/drm/i915/gvt/scheduler.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/gvt/scheduler.c b/drivers/gpu/drm/i915/gvt/scheduler.c index 0771b715f825..02af14023383 100644 --- a/drivers/gpu/drm/i915/gvt/scheduler.c +++ b/drivers/gpu/drm/i915/gvt/scheduler.c @@ -634,6 +634,13 @@ complete: FORCEWAKE_ALL); intel_runtime_pm_put(gvt->dev_priv); + if (ret && (vgpu_is_vm_unhealthy(ret))) { + mutex_lock(&gvt->lock); + intel_vgpu_clean_execlist(vgpu); + mutex_unlock(&gvt->lock); + enter_failsafe_mode(vgpu, GVT_FAILSAFE_GUEST_ERR); + } + } return 0; } |