Commit 31052811 authored by Chris Wilson's avatar Chris Wilson Committed by Daniel Vetter
Browse files

drm/i915/selftests: Check for engine-reset errors in the middle of workarounds



As we reset the engine between verifying the workarounds remain intact,
report an engine reset failure.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210125140136.10494-1-chris@chris-wilson.co.uk


Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent ae2fb480
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -1219,7 +1219,11 @@ live_engine_reset_workarounds(void *arg)
			goto err;
		}

		intel_engine_reset(engine, "live_workarounds:idle");
		ret = intel_engine_reset(engine, "live_workarounds:idle");
		if (ret) {
			pr_err("%s: Reset failed while idle\n", engine->name);
			goto err;
		}

		ok = verify_wa_lists(gt, &lists, "after idle reset");
		if (!ok) {
@@ -1240,12 +1244,18 @@ live_engine_reset_workarounds(void *arg)

		ret = request_add_spin(rq, &spin);
		if (ret) {
			pr_err("Spinner failed to start\n");
			pr_err("%s: Spinner failed to start\n", engine->name);
			igt_spinner_fini(&spin);
			goto err;
		}

		intel_engine_reset(engine, "live_workarounds:active");
		ret = intel_engine_reset(engine, "live_workarounds:active");
		if (ret) {
			pr_err("%s: Reset failed on an active spinner\n",
			       engine->name);
			igt_spinner_fini(&spin);
			goto err;
		}

		igt_spinner_end(&spin);
		igt_spinner_fini(&spin);