aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/gvt
diff options
context:
space:
mode:
authorZhenyu Wang <zhenyuw@linux.intel.com>2018-01-15 16:36:11 +0800
committerRodrigo Vivi <rodrigo.vivi@intel.com>2018-02-01 07:32:08 -0800
commit14b4434bff1aab69f3785bc67276efbff7fffa3d (patch)
tree708c0eafdace6b9acd7e6a140d30e2060e99a212 /drivers/gpu/drm/i915/gvt
parentdrm/i915/gvt: Keep obj->dma_buf link NULL during exporting (diff)
downloadlinux-dev-14b4434bff1aab69f3785bc67276efbff7fffa3d.tar.xz
linux-dev-14b4434bff1aab69f3785bc67276efbff7fffa3d.zip
drm/i915/gvt: cancel virtual vblank timer when no vGPU exists
Stop irq timer for virtual vblank timer emulation if no vGPU exists, otherwise it will keep gvt service thread busy to handle virtual vblank but no use. Reviewed-by: Zhi Wang <zhi.a.wang@intel.com> Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/gvt')
-rw-r--r--drivers/gpu/drm/i915/gvt/vgpu.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/gvt/vgpu.c b/drivers/gpu/drm/i915/gvt/vgpu.c
index 4688619f6a1c..a8784fa91289 100644
--- a/drivers/gpu/drm/i915/gvt/vgpu.c
+++ b/drivers/gpu/drm/i915/gvt/vgpu.c
@@ -258,6 +258,8 @@ void intel_gvt_destroy_vgpu(struct intel_vgpu *vgpu)
intel_gvt_debugfs_remove_vgpu(vgpu);
idr_remove(&gvt->vgpu_idr, vgpu->id);
+ if (idr_is_empty(&gvt->vgpu_idr))
+ intel_gvt_clean_irq(gvt);
intel_vgpu_clean_sched_policy(vgpu);
intel_vgpu_clean_submission(vgpu);
intel_vgpu_clean_display(vgpu);