From: Matt Roper <matthew.d.roper@intel.com>
To: Jani Nikula <jani.nikula@intel.com>
Cc: <intel-gfx@lists.freedesktop.org>, <intel-xe@lists.freedesktop.org>
Subject: Re: [PATCH v3 7/8] drm/i915/reset: pass test only parameter to intel_display_reset_finish()
Date: Mon, 3 Mar 2025 15:21:23 -0800 [thread overview]
Message-ID: <20250303232123.GP5109@mdroper-desk1.amr.corp.intel.com> (raw)
In-Reply-To: <a36481db334fedcde50ae0e66c4d57825cae8cb7.1741001054.git.jani.nikula@intel.com>
On Mon, Mar 03, 2025 at 01:27:09PM +0200, Jani Nikula wrote:
> Deduplicate the gpu_reset_clobbers_display() part by passing the
> information in from gt side.
>
> Cc: Matt Roper <matthew.d.roper@intel.com>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_display_reset.c | 12 ++----------
> drivers/gpu/drm/i915/display/intel_display_reset.h | 2 +-
> drivers/gpu/drm/i915/gt/intel_reset.c | 2 +-
> 3 files changed, 4 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_reset.c b/drivers/gpu/drm/i915/display/intel_display_reset.c
> index c48d822db58e..d5ce0ac43377 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_reset.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_reset.c
> @@ -14,14 +14,6 @@
> #include "intel_hotplug.h"
> #include "intel_pps.h"
>
> -static bool gpu_reset_clobbers_display(struct intel_display *display)
> -{
> - struct drm_i915_private *i915 = to_i915(display->drm);
> -
> - return (INTEL_INFO(i915)->gpu_reset_clobbers_display &&
> - intel_has_gpu_reset(to_gt(i915)));
> -}
> -
> bool intel_display_reset_test(struct intel_display *display)
> {
> return display->params.force_reset_modeset_test;
> @@ -83,7 +75,7 @@ bool intel_display_reset_prepare(struct intel_display *display)
> return true;
> }
>
> -void intel_display_reset_finish(struct intel_display *display)
> +void intel_display_reset_finish(struct intel_display *display, bool test_only)
The name 'test_only' makes me think this is going to be about
DRM_MODE_ATOMIC_TEST_ONLY somehow, rather than "I set a module parameter
to force this, even when it isn't needed, for testing purposes."
Not sure if it's worth renaming or not. Either way,
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Matt
> {
> struct drm_i915_private *i915 = to_i915(display->drm);
> struct drm_modeset_acquire_ctx *ctx = &display->restore.reset_ctx;
> @@ -98,7 +90,7 @@ void intel_display_reset_finish(struct intel_display *display)
> goto unlock;
>
> /* reset doesn't touch the display */
> - if (!gpu_reset_clobbers_display(display)) {
> + if (test_only) {
> /* for testing only restore the display */
> ret = drm_atomic_helper_commit_duplicated_state(state, ctx);
> if (ret) {
> diff --git a/drivers/gpu/drm/i915/display/intel_display_reset.h b/drivers/gpu/drm/i915/display/intel_display_reset.h
> index 311b5af8ca0c..f518147199a1 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_reset.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_reset.h
> @@ -12,6 +12,6 @@ struct intel_display;
>
> bool intel_display_reset_test(struct intel_display *display);
> bool intel_display_reset_prepare(struct intel_display *display);
> -void intel_display_reset_finish(struct intel_display *display);
> +void intel_display_reset_finish(struct intel_display *display, bool test_only);
>
> #endif /* __INTEL_RESET_H__ */
> diff --git a/drivers/gpu/drm/i915/gt/intel_reset.c b/drivers/gpu/drm/i915/gt/intel_reset.c
> index d4f2829477b4..0f12752d0f24 100644
> --- a/drivers/gpu/drm/i915/gt/intel_reset.c
> +++ b/drivers/gpu/drm/i915/gt/intel_reset.c
> @@ -1434,7 +1434,7 @@ static void intel_gt_reset_global(struct intel_gt *gt,
> intel_gt_reset(gt, engine_mask, reason);
>
> if (reset_display)
> - intel_display_reset_finish(display);
> + intel_display_reset_finish(display, !need_display_reset);
> }
>
> if (!test_bit(I915_WEDGED, >->reset.flags))
> --
> 2.39.5
>
--
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation
next prev parent reply other threads:[~2025-03-03 23:22 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-03 11:27 [PATCH v3 0/8] drm/i915: display reset cleanups Jani Nikula
2025-03-03 11:27 ` [PATCH v3 1/8] drm/i915/display: convert display reset to struct intel_display * Jani Nikula
2025-03-03 11:27 ` [PATCH v3 2/8] drm/i915: move pending_fb_pin to struct intel_display Jani Nikula
2025-03-03 11:27 ` [PATCH v3 3/8] drm/i915/reset: add intel_gt_gpu_reset_clobbers_display() helper Jani Nikula
2025-03-03 11:27 ` [PATCH v3 4/8] drm/i915/reset: add intel_display_reset_test() Jani Nikula
2025-03-03 11:27 ` [PATCH v3 5/8] drm/i915/reset: remove I915_RESET_MODESET flag Jani Nikula
2025-03-03 23:11 ` Matt Roper
2025-03-03 11:27 ` [PATCH v3 6/8] drm/i915/reset: decide whether display reset is needed on gt side Jani Nikula
2025-03-03 23:15 ` Matt Roper
2025-03-03 11:27 ` [PATCH v3 7/8] drm/i915/reset: pass test only parameter to intel_display_reset_finish() Jani Nikula
2025-03-03 23:21 ` Matt Roper [this message]
2025-03-03 11:27 ` [PATCH v3 8/8] drm/i915/reset: add modeset_stuck callback to intel_display_reset_prepare() Jani Nikula
2025-03-03 23:22 ` Matt Roper
2025-03-03 11:51 ` ✓ CI.Patch_applied: success for drm/i915: display reset cleanups (rev2) Patchwork
2025-03-03 11:51 ` ✓ CI.checkpatch: " Patchwork
2025-03-03 11:53 ` ✓ CI.KUnit: " Patchwork
2025-03-03 12:09 ` ✓ CI.Build: " Patchwork
2025-03-03 12:11 ` ✓ CI.Hooks: " Patchwork
2025-03-03 12:13 ` ✗ CI.checksparse: warning " Patchwork
2025-03-03 12:33 ` ✓ Xe.CI.BAT: success " Patchwork
2025-03-03 13:56 ` ✗ Xe.CI.Full: 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=20250303232123.GP5109@mdroper-desk1.amr.corp.intel.com \
--to=matthew.d.roper@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=jani.nikula@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox