From: Michal Wajdeczko <michal.wajdeczko@intel.com>
To: Arvind Yadav <arvind.yadav@intel.com>,
<intel-xe@lists.freedesktop.org>, <rodrigo.vivi@intel.com>
Cc: <badal.nilawar@intel.com>, <himal.prasad.ghimiray@intel.com>,
<dnyaneshwar.bhadane@intel.com>, <mallesh.koujalagi@intel.com>,
<matthew.brost@intel.com>
Subject: Re: [PATCH v4 4/4] drm/xe/gt: Report GT reset and power failures using SIGID
Date: Fri, 28 Aug 2026 16:18:23 +0200 [thread overview]
Message-ID: <432ba474-a670-4f98-bfe6-3ee151329a45@intel.com> (raw)
In-Reply-To: <20260828095803.2130312-5-arvind.yadav@intel.com>
On 8/28/2026 11:58 AM, Arvind Yadav wrote:
> Route the GT reset failure log through the structured SIGID logging
> helper.
>
> Failure to clear GRDOM_FULL means the GT reset did not complete as
> expected. Use the GT component, which maps to XE_SIGID_GT_TDR, and
> pass the reset errno value to the helper.
>
> Keep the lower-level GRDOM_FULL failure report because it records
> the exact reset register wait that failed before the higher-level
> reset failure is reported.
>
> Also route GT suspend, resume and runtime power-flow failures through
> the same helper.
can't we do that PM flows in a separate patch?
>
> These paths were already reported as GT errors. This change only adds
> structured SIGID reporting and keeps the errno in the helper data.
>
> Cc: Mallesh Koujalagi <mallesh.koujalagi@intel.com>
> Cc: Badal Nilawar <badal.nilawar@intel.com>
> Cc: Matthew Brost <matthew.brost@intel.com>
> Cc: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Suggested-by: Mallesh Koujalagi <mallesh.koujalagi@intel.com>
> Signed-off-by: Arvind Yadav <arvind.yadav@intel.com>
> ---
> drivers/gpu/drm/xe/xe_gt.c | 13 ++++++-------
> 1 file changed, 6 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c
> index 6805e0d3bf21..58df31ecb825 100644
> --- a/drivers/gpu/drm/xe/xe_gt.c
> +++ b/drivers/gpu/drm/xe/xe_gt.c
> @@ -824,8 +824,7 @@ static int do_gt_reset(struct xe_gt *gt)
> xe_mmio_write32(>->mmio, GDRST, GRDOM_FULL);
> err = xe_mmio_wait32(>->mmio, GDRST, GRDOM_FULL, 0, 5000, NULL, false);
> if (err)
> - xe_gt_err(gt, "failed to clear GRDOM_FULL (%pe)\n",
> - ERR_PTR(err));
> + xe_log_err(gt, GT, err, "failed to clear GRDOM_FULL\n");
while around, can we improve the error message here?
we are not clearing that bit, the CP does (Bspec:52549)
"full graphics reset not completed in %u ms"
>
> xe_gsc_wa_14015076503(gt, false);
>
> @@ -1013,13 +1012,13 @@ int xe_gt_suspend(struct xe_gt *gt)
hmm, for the PM flows below, is the SIGID GT_TDR correct one?
shouldn't we use PCI component (or maybe new sub-component POWER)
that uses XE_SIGID_IO_BUS ?
>
> CLASS(xe_force_wake, fw_ref)(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> if (!xe_force_wake_ref_has_domain(fw_ref.domains, XE_FORCEWAKE_ALL)) {
> - xe_gt_err(gt, "suspend failed (%pe)\n", ERR_PTR(-ETIMEDOUT));
> + xe_log_err(gt, GT, -ETIMEDOUT, "suspend failed\n");
btw, maybe it's a time to improve our error message:
"can't suspend due to forcewake error"
> return -ETIMEDOUT;
> }
>
> err = xe_uc_suspend(>->uc);
> if (err) {
> - xe_gt_err(gt, "suspend failed (%pe)\n", ERR_PTR(err));
> + xe_log_err(gt, GT, err, "suspend failed\n");
"can't suspend due to uc error"
> return err;
> }
>
> @@ -1065,7 +1064,7 @@ int xe_gt_resume(struct xe_gt *gt)
> xe_gt_dbg(gt, "resuming\n");
> CLASS(xe_force_wake, fw_ref)(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> if (!xe_force_wake_ref_has_domain(fw_ref.domains, XE_FORCEWAKE_ALL)) {
> - xe_gt_err(gt, "resume failed (%pe)\n", ERR_PTR(-ETIMEDOUT));
> + xe_log_err(gt, GT, -ETIMEDOUT, "resume failed\n");
"can't resume due to forcewake error"
> return -ETIMEDOUT;
> }
>
> @@ -1092,7 +1091,7 @@ int xe_gt_runtime_suspend(struct xe_gt *gt)
>
> CLASS(xe_force_wake, fw_ref)(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> if (!xe_force_wake_ref_has_domain(fw_ref.domains, XE_FORCEWAKE_ALL)) {
> - xe_gt_err(gt, "runtime suspend failed (%pe)\n", ERR_PTR(-ETIMEDOUT));
> + xe_log_err(gt, GT, -ETIMEDOUT, "runtime suspend failed\n");
"can't runtime suspend due to forcewake error"
> return -ETIMEDOUT;
> }
>
> @@ -1116,7 +1115,7 @@ int xe_gt_runtime_resume(struct xe_gt *gt)
>
> CLASS(xe_force_wake, fw_ref)(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> if (!xe_force_wake_ref_has_domain(fw_ref.domains, XE_FORCEWAKE_ALL)) {
> - xe_gt_err(gt, "runtime resume failed (%pe)\n", ERR_PTR(-ETIMEDOUT));
> + xe_log_err(gt, GT, -ETIMEDOUT, "runtime resume failed\n");
"can't runtime resume due to forcewake error"
> return -ETIMEDOUT;
> }
>
next prev parent reply other threads:[~2026-08-28 14:18 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-28 9:57 [PATCH v4 0/4] drm/xe: Report GT TDR and VM rebind faults using SIGID Arvind Yadav
2026-08-28 9:58 ` [PATCH v4 1/4] drm/xe/guc: Report reset-request failure " Arvind Yadav
2026-08-28 10:28 ` Michal Wajdeczko
2026-08-31 6:11 ` Yadav, Arvind
2026-08-28 9:58 ` [PATCH v4 2/4] drm/xe/guc: Report CGP protocol errors " Arvind Yadav
2026-08-28 10:37 ` Michal Wajdeczko
2026-08-31 5:38 ` Yadav, Arvind
2026-08-28 9:58 ` [PATCH v4 3/4] drm/xe/svm: Report terminal page-fault failures " Arvind Yadav
2026-08-28 9:58 ` [PATCH v4 4/4] drm/xe/gt: Report GT reset and power " Arvind Yadav
2026-08-28 14:18 ` Michal Wajdeczko [this message]
2026-08-31 5:10 ` Yadav, Arvind
2026-08-28 10:06 ` ✓ CI.KUnit: success for drm/xe: Report GT TDR and VM rebind faults using SIGID (rev4) Patchwork
2026-08-28 11:09 ` ✓ Xe.CI.BAT: " Patchwork
2026-08-28 11:48 ` ✓ Xe.CI.FULL: " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=432ba474-a670-4f98-bfe6-3ee151329a45@intel.com \
--to=michal.wajdeczko@intel.com \
--cc=arvind.yadav@intel.com \
--cc=badal.nilawar@intel.com \
--cc=dnyaneshwar.bhadane@intel.com \
--cc=himal.prasad.ghimiray@intel.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=mallesh.koujalagi@intel.com \
--cc=matthew.brost@intel.com \
--cc=rodrigo.vivi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.