[PATCH RESEND] drm/i915: Mark GPU wedging on driver unregister unrecoverable
Michał Winiarski
michal.winiarski at intel.com
Fri Sep 10 11:31:27 UTC 2021
On 03.09.2021 16:28, Janusz Krzysztofik wrote:
> GPU wedged flag now set on driver unregister to prevent from further
> using the GPU can be then cleared unintentionally when calling
> __intel_gt_unset_wedged() still before the flag is finally marked
> unrecoverable. We need to have it marked unrecoverable earlier.
> Implement that by replacing a call to intel_gt_set_wedged() in
> intel_gt_driver_unregister() with intel_gt_set_wedged_on_fini().
>
> With the above in place, intel_gt_set_wedged_on_fini() is now called
> twice on driver remove, second time from __intel_gt_disable(). This
> seems harmless, while dropping intel_gt_set_wedged_on_fini() from
> __intel_gt_disable() proved to break some driver probe error unwind
> paths as well as mock selftest exit path.
>
> Signed-off-by: Janusz Krzysztofik <janusz.krzysztofik at linux.intel.com>
> Cc: Michał Winiarski <michal.winiarski at intel.com>
Reviewed-by: Michał Winiarski <michal.winiarski at intel.com>
-Michał
> ---
> Resending with Cc: dri-devel at lists.freedesktop.org as requested.
>
> Thanks,
> Janusz
>
> drivers/gpu/drm/i915/gt/intel_gt.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_gt.c b/drivers/gpu/drm/i915/gt/intel_gt.c
> index 62d40c986642..173b53cb2b47 100644
> --- a/drivers/gpu/drm/i915/gt/intel_gt.c
> +++ b/drivers/gpu/drm/i915/gt/intel_gt.c
> @@ -750,7 +750,7 @@ void intel_gt_driver_unregister(struct intel_gt *gt)
> * all in-flight requests so that we can quickly unbind the active
> * resources.
> */
> - intel_gt_set_wedged(gt);
> + intel_gt_set_wedged_on_fini(gt);
>
> /* Scrub all HW state upon release */
> with_intel_runtime_pm(gt->uncore->rpm, wakeref)
>
More information about the dri-devel
mailing list