All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Teres Alexis, Alan Previn" <alan.previn.teres.alexis@intel.com>
To: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Subject: Re: [Intel-gfx] [RFC v3 7/7] drm/i915/guc: Print the GuC error capture output register list.
Date: Tue, 11 Jan 2022 21:54:22 +0000	[thread overview]
Message-ID: <2e927fc0e4d0ea4f7591cb7e814b6e3299c7717c.camel@intel.com> (raw)
In-Reply-To: <20220111093018.610582-8-alan.previn.teres.alexis@intel.com>

In RFC rev2, Matt Brost requested for a comparison of the error capture from execlist vs guc-capture.
I've added that data into the following links:

gem_exec_capture_errordump_ADLS_execlist : https://pastebin.com/RBwkHFNq
gem_exec_capture_errordump_ADLS_gucsubmission: https://pastebin.com/8k5p3kSZ

This result is obtained after an additional fix reported below.
I dont think i can make them an exact match, but its close enough and gem_exec_capture-capture passes.

...alan


On Tue, 2022-01-11 at 01:30 -0800, Alan Previn wrote:
> Print the GuC captured error state register list (string names
> and values) when gpu_coredump_state printout is invoked via
> the i915 debugfs for flushing the gpu error-state that was
> captured prior.
> 
> 

> 
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_capture.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_capture.c
> index 048b1b7b9259..04b6d25abd47 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_capture.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_capture.c
> +		}
> +		for (ee = gt->engine; ee; ee = ee->next) {
> +			const struct i915_vma_coredump *vma;
> +
> +			if (ee->engine == eng && ee->gucinfo.eng_id == guc_enginst &&
> +			    ee->gucinfo.guc_id == guc_gucid &&
> +			    (ee->gucinfo.lrca & CTX_GTT_ADDRESS_MASK) ==
> +			    (guc_lrca & CTX_GTT_ADDRESS_MASK)) {
> 

There is a bug in above code - discovered this morning after additional debug of certain subtest failures:

-                       if (ee->engine == eng && ee->gucinfo.eng_id == guc_enginst &&
+                       if (ee->engine == eng &&
+                           guc_enginst == GUC_ID_TO_ENGINE_INSTANCE(ee->gucinfo.eng_id) &&
+                           guc_engclss == GUC_ID_TO_ENGINE_CLASS(ee->gucinfo.eng_id) &&
                            ee->gucinfo.guc_id == guc_gucid &&
                            (ee->gucinfo.lrca & CTX_GTT_ADDRESS_MASK) ==
                            (guc_lrca & CTX_GTT_ADDRESS_MASK)) {




> +				PRINT(&i915->drm, ebuf, "i915-Ctx-VMA-Matched:\n");
> +				GCAP_PRINT_BATCH(i915, ebuf, ee, batch);
> +				PRINT(&i915->drm, ebuf, "  engine reset count: %u\n",
> +				      ee->reset_count);
> +				ctx = &ee->context;
> +				GCAP_PRINT_CONTEXT(i915, ebuf, ctx);
> +
> +				for (vma = ee->vma; vma; vma = vma->next)
> +					intel_gpu_error_print_vma(ebuf, ee->engine, vma);
> +			}
> +		}

  reply	other threads:[~2022-01-11 21:54 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-11  9:30 [RFC v3 0/7] Add GuC Error Capture Support Alan Previn
2022-01-11  9:30 ` [Intel-gfx] " Alan Previn
2022-01-11  9:30 ` [Intel-gfx] [RFC v3 1/7] drm/i915/guc: Add basic support for error capture lists Alan Previn
2022-01-11  9:30 ` [Intel-gfx] [RFC v3 2/7] drm/i915/guc: Update GuC ADS size " Alan Previn
2022-01-11  9:30 ` [Intel-gfx] [RFC v3 3/7] drm/i915/guc: Populate XE_LP register lists for GuC error state capture Alan Previn
2022-01-11  9:30 ` [Intel-gfx] [RFC v3 4/7] drm/i915/guc: Add GuC's error state capture output structures Alan Previn
2022-01-11  9:30 ` [Intel-gfx] [RFC v3 5/7] drm/i915/guc: Update GuC's log-buffer-state access for error capture Alan Previn
2022-01-11  9:30 ` [Intel-gfx] [RFC v3 6/7] drm/i915/guc: Copy new GuC error capture logs upon G2H notification Alan Previn
2022-01-11  9:30 ` [Intel-gfx] [RFC v3 7/7] drm/i915/guc: Print the GuC error capture output register list Alan Previn
2022-01-11 21:54   ` Teres Alexis, Alan Previn [this message]
2022-01-11 14:21 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Add GuC Error Capture Support (rev3) Patchwork
2022-01-11 14:22 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2022-01-11 14:38 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " 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=2e927fc0e4d0ea4f7591cb7e814b6e3299c7717c.camel@intel.com \
    --to=alan.previn.teres.alexis@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    /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.