Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0fdbe58c authored by Chris Wilson's avatar Chris Wilson
Browse files

drm/i915/selftests: Skip live context execution test without logical contexts



If the HW (or driver) doesn't support logical contexts, don't pretend we
gain anything from trying to execute GPU commands with them. At best it
reports -ENODEV, which is an unhelpful failure that we should just skip.

v2: Be more specific and check the driver/engine caps for logical (HW)
context support.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: default avatarMatthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180706101923.28548-1-chris@chris-wilson.co.uk
parent 481827b4
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -336,11 +336,15 @@ static int igt_ctx_exec(void *arg)
	bool first_shared_gtt = true;
	int err = -ENODEV;

	/* Create a few different contexts (with different mm) and write
	/*
	 * Create a few different contexts (with different mm) and write
	 * through each ctx/mm using the GPU making sure those writes end
	 * up in the expected pages of our obj.
	 */

	if (!DRIVER_CAPS(i915)->has_logical_contexts)
		return 0;

	file = mock_file(i915);
	if (IS_ERR(file))
		return PTR_ERR(file);
@@ -367,6 +371,9 @@ static int igt_ctx_exec(void *arg)
		}

		for_each_engine(engine, i915, id) {
			if (!engine->context_size)
				continue; /* No logical context support in HW */

			if (!intel_engine_can_store_dword(engine))
				continue;