summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/gvt/gvt.c
diff options
context:
space:
mode:
authorPing Gao2017-05-24 14:30:17 +0200
committerZhenyu Wang2017-06-08 07:59:16 +0200
commitc713cb2f9b7e1e9ffa8a379cecb13bc6eacd49b6 (patch)
treef32339ea16083a9c68508e535451e1d84896459a /drivers/gpu/drm/i915/gvt/gvt.c
parentdrm/i915/gvt: Delete gvt_dbg_cmd() in cmd_parser_exec() (diff)
downloadkernel-qcow2-linux-c713cb2f9b7e1e9ffa8a379cecb13bc6eacd49b6.tar.gz
kernel-qcow2-linux-c713cb2f9b7e1e9ffa8a379cecb13bc6eacd49b6.tar.xz
kernel-qcow2-linux-c713cb2f9b7e1e9ffa8a379cecb13bc6eacd49b6.zip
drm/i915/gvt: Support event based scheduling
This patch decouple the time slice calculation and scheduler, let other event be able to trigger scheduling without impact the calculation for QoS. v2: add only one new enum definition. v3: fix typo. Signed-off-by: Ping Gao <ping.a.gao@intel.com> Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/gvt/gvt.c')
-rw-r--r--drivers/gpu/drm/i915/gvt/gvt.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/gvt/gvt.c b/drivers/gpu/drm/i915/gvt/gvt.c
index 20329171e4ab..c27c6838eaca 100644
--- a/drivers/gpu/drm/i915/gvt/gvt.c
+++ b/drivers/gpu/drm/i915/gvt/gvt.c
@@ -147,7 +147,9 @@ static int gvt_service_thread(void *data)
mutex_unlock(&gvt->lock);
}
- if (test_and_clear_bit(INTEL_GVT_REQUEST_SCHED,
+ if (test_bit(INTEL_GVT_REQUEST_SCHED,
+ (void *)&gvt->service_request) ||
+ test_bit(INTEL_GVT_REQUEST_EVENT_SCHED,
(void *)&gvt->service_request)) {
intel_gvt_schedule(gvt);
}