aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/selftests/mock_context.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2017-07-21 13:32:34 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2017-07-27 09:38:48 +0200
commit79f0f4724d9c502d65d08917709a60e4a8cb4972 (patch)
treecdfc6fffe906999d5a2fccc3bfd48ae305d5b793 /drivers/gpu/drm/i915/selftests/mock_context.c
parentdrm/i915: Disable per-engine reset for Broxton (diff)
downloadlinux-dev-79f0f4724d9c502d65d08917709a60e4a8cb4972.tar.xz
linux-dev-79f0f4724d9c502d65d08917709a60e4a8cb4972.zip
drm/i915/selftests: Exercise independence of per-engine resets
If all goes well, resetting one engine should not affect the operation of any others. So to test this, we setup a continuous stream of requests onto to each of the "innocent" engines whilst constantly resetting our target engine. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Cc: Michel Thierry <michel.thierry@intel.com> Reviewed-by: Michel Thierry <michel.thierry@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20170721123238.16428-16-chris@chris-wilson.co.uk Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/selftests/mock_context.c')
-rw-r--r--drivers/gpu/drm/i915/selftests/mock_context.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/selftests/mock_context.c b/drivers/gpu/drm/i915/selftests/mock_context.c
index 9c7c68181f82..d436f2d5089b 100644
--- a/drivers/gpu/drm/i915/selftests/mock_context.c
+++ b/drivers/gpu/drm/i915/selftests/mock_context.c
@@ -95,3 +95,11 @@ void mock_init_contexts(struct drm_i915_private *i915)
INIT_WORK(&i915->contexts.free_work, contexts_free_worker);
init_llist_head(&i915->contexts.free_list);
}
+
+struct i915_gem_context *
+live_context(struct drm_i915_private *i915, struct drm_file *file)
+{
+ lockdep_assert_held(&i915->drm.struct_mutex);
+
+ return i915_gem_create_context(i915, file->driver_priv);
+}