2019-03-29 14:12:17 +08:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
2018-10-20 01:05:20 +08:00
|
|
|
From: Ping Gao <ping.a.gao@intel.com>
|
|
|
|
Date: Wed, 6 Sep 2017 19:29:48 +0800
|
2019-03-29 14:12:17 +08:00
|
|
|
Subject: [PATCH] drm/i915/gvt: Enable guest conformance detection
|
2018-10-20 01:05:20 +08:00
|
|
|
|
|
|
|
The first overall comparison happen before the wordload submission.
|
|
|
|
|
|
|
|
Signed-off-by: Ping Gao <ping.a.gao@intel.com>
|
2018-10-30 05:21:52 +08:00
|
|
|
Reviewed-by: Kevin Tian
|
2018-10-20 01:05:20 +08:00
|
|
|
Reviewed-by: Singh, Satyeshwar <satyeshwar.singh@intel.com>
|
|
|
|
Reviewed-on:
|
|
|
|
Reviewed-by: Jiang, Fei <fei.jiang@intel.com>
|
|
|
|
Reviewed-by: Dong, Eddie <eddie.dong@intel.com>
|
|
|
|
Tested-by: Dong, Eddie <eddie.dong@intel.com>
|
|
|
|
|
|
|
|
V2: rebase 4.19
|
|
|
|
Signed-off-by: Xinyun Liu <xinyun.liu@intel.com>
|
|
|
|
---
|
|
|
|
drivers/gpu/drm/i915/gvt/mmio_context.h | 1 +
|
|
|
|
drivers/gpu/drm/i915/gvt/scheduler.c | 4 ++++
|
|
|
|
2 files changed, 5 insertions(+)
|
|
|
|
|
|
|
|
diff --git a/drivers/gpu/drm/i915/gvt/mmio_context.h b/drivers/gpu/drm/i915/gvt/mmio_context.h
|
2020-05-05 09:02:46 +08:00
|
|
|
index 5c3b9ff9f..b5059de42 100644
|
2018-10-20 01:05:20 +08:00
|
|
|
--- a/drivers/gpu/drm/i915/gvt/mmio_context.h
|
|
|
|
+++ b/drivers/gpu/drm/i915/gvt/mmio_context.h
|
|
|
|
@@ -54,4 +54,5 @@ bool is_inhibit_context(struct intel_context *ce);
|
|
|
|
int intel_vgpu_restore_inhibit_context(struct intel_vgpu *vgpu,
|
|
|
|
struct i915_request *req);
|
|
|
|
|
|
|
|
+int intel_gvt_vgpu_conformance_check(struct intel_vgpu *vgpu, int ring_id);
|
|
|
|
#endif
|
|
|
|
diff --git a/drivers/gpu/drm/i915/gvt/scheduler.c b/drivers/gpu/drm/i915/gvt/scheduler.c
|
2020-05-05 09:02:46 +08:00
|
|
|
index d099fc2e4..cf973bce9 100644
|
2018-10-20 01:05:20 +08:00
|
|
|
--- a/drivers/gpu/drm/i915/gvt/scheduler.c
|
|
|
|
+++ b/drivers/gpu/drm/i915/gvt/scheduler.c
|
|
|
|
@@ -711,6 +711,10 @@ static int dispatch_workload(struct intel_vgpu_workload *workload)
|
|
|
|
mutex_lock(&dev_priv->drm.struct_mutex);
|
|
|
|
|
|
|
|
ret = intel_gvt_scan_and_shadow_workload(workload);
|
|
|
|
+
|
|
|
|
+ if (intel_gvt_vgpu_conformance_check(vgpu, ring_id))
|
|
|
|
+ gvt_err("vgpu%d unconformance guest detected\n", vgpu->id);
|
|
|
|
+
|
|
|
|
if (ret)
|
|
|
|
goto out;
|
|
|
|
|
|
|
|
--
|
2019-04-08 18:08:36 +08:00
|
|
|
https://clearlinux.org
|
2018-10-20 01:05:20 +08:00
|
|
|
|