Commit 835443da authored by Sebastian Brzezinka's avatar Sebastian Brzezinka Committed by Andi Shyti
Browse files

drm/i915/gt: Log reason for setting TAINT_WARN at reset



TAINT_WARN is used to notify CI about non-recoverable failures, which
require device to be restarted. In some cases, there is no sufficient
information about the reason for the restart. The test runner is just
killed, and DUT is rebooted, logging only 'probe with driver i915 failed
with error -4' to dmesg.

Printing error to dmesg before TAINT_WARN, would explain why the device
has been restarted, and what caused the malfunction in the first place.

Signed-off-by: default avatarSebastian Brzezinka <sebastian.brzezinka@intel.com>
Reviewed-by: default avatarAndi Shyti <andi.shyti@linux.intel.com>
Signed-off-by: default avatarAndi Shyti <andi.shyti@linux.intel.com>
Acked-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: default avatarAndi Shyti <andi.shyti@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20241220131714.1309483-1-andi.shyti@linux.intel.com
parent 5ed539e3
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -1113,6 +1113,7 @@ static bool __intel_gt_unset_wedged(struct intel_gt *gt)
		 * Warn CI about the unrecoverable wedged condition.
		 * Time for a reboot.
		 */
		gt_err(gt, "Unrecoverable wedged condition\n");
		add_taint_for_CI(gt->i915, TAINT_WARN);
		return false;
	}
@@ -1263,8 +1264,10 @@ void intel_gt_reset(struct intel_gt *gt,
	}

	ret = resume(gt);
	if (ret)
	if (ret) {
		gt_err(gt, "Failed to resume (%d)\n", ret);
		goto taint;
	}

finish:
	reset_finish(gt, awake);
@@ -1607,6 +1610,7 @@ void intel_gt_set_wedged_on_init(struct intel_gt *gt)
	set_bit(I915_WEDGED_ON_INIT, &gt->reset.flags);

	/* Wedged on init is non-recoverable */
	gt_err(gt, "Non-recoverable wedged on init\n");
	add_taint_for_CI(gt->i915, TAINT_WARN);
}