drm/i915/gvt: Fix the vblank timer close issue after shutdown VMs in reverse
authorfred gao <fred.gao@intel.com>
Mon, 17 Jul 2017 06:52:05 +0000 (14:52 +0800)
committerZhenyu Wang <zhenyuw@linux.intel.com>
Mon, 17 Jul 2017 09:09:04 +0000 (17:09 +0800)
commitf43aa31fe7dc43b808ec619b0d407180cd3725c0
tree5d73caa9ab4e6c2c79793b6ba202198d61ad9e64
parent0cf5ec41839d82ee7f8fbb47f137b7afc562b9f1
drm/i915/gvt: Fix the vblank timer close issue after shutdown VMs in reverse

Once the Windows guest is shutdown, the display pipe will be disabled
and intel_gvt_check_vblank_emulation will be called to check if the
vblank timer is turned off. Given the scenario of creating VM1 ,VM2,
destoying VM2 in current code, VM1 has pipe enabled and continues to
check VM2, the flag have_enabled_pipe is always false since all the VM2
pipes are disabled, so the vblank timer will be canceled and TDR happens
in Windows VM1 guest due to the vsync timeout.

In this patch the vblank timer will be never canceled once one pipe is
enabled.

v2:
- remove have_enabled_pipe flag and check pipe enabled directly. (Zhenyu)

Cc: Wang Hongbo <hongbo.wang@intel.com>
Signed-off-by: fred gao <fred.gao@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
drivers/gpu/drm/i915/gvt/display.c