[Intel-gfx] [PATCH] drm/i915/selftests: re-init the GT in live_gt_pm

Chris Wilson chris at chris-wilson.co.uk
Wed Nov 20 00:21:19 UTC 2019


Quoting Daniele Ceraolo Spurio (2019-11-20 00:04:25)
> When GuC is in use we need to make sure it is re-loaded before the call
> to gt_resume, otherwise communication from the engines to the GuC will
> not be processed, which blocks the engines from ctx switching and from
> being reset.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=112205
> Cc: Andi Shyti <andi.shyti at intel.com>
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
> ---
>  drivers/gpu/drm/i915/gt/selftest_gt_pm.c | 9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/gt/selftest_gt_pm.c b/drivers/gpu/drm/i915/gt/selftest_gt_pm.c
> index d1752f15702a..0bb17c806dfc 100644
> --- a/drivers/gpu/drm/i915/gt/selftest_gt_pm.c
> +++ b/drivers/gpu/drm/i915/gt/selftest_gt_pm.c
> @@ -11,8 +11,11 @@ static int live_gt_resume(void *arg)
>  {
>         struct intel_gt *gt = arg;
>         IGT_TIMEOUT(end_time);
> +       intel_wakeref_t wakeref;
>         int err;
>  
> +       wakeref = intel_runtime_pm_get(gt->uncore->rpm);

That defeats the point of gt pm, no?

> +
>         /* Do several suspend/resume cycles to check we don't explode! */
>         do {
>                 intel_gt_suspend_prepare(gt);
> @@ -25,6 +28,10 @@ static int live_gt_resume(void *arg)
>                         break;
>                 }
>  
> +               err = intel_gt_init_hw(gt);

Hmm. I have that as part of intel_gt_resume.  Which also pulls it into
the pm.

I think I prefer my plan/patches :)
-Chris


More information about the Intel-gfx mailing list