[Intel-gfx] [PATCH] drm/i915: Flush async power domains on probe failure

Chris Wilson chris at chris-wilson.co.uk
Tue Apr 14 13:17:05 UTC 2020


Quoting Jani Nikula (2020-04-14 13:32:22)
> On Fri, 10 Apr 2020, "Souza, Jose" <jose.souza at intel.com> wrote:
> > On Fri, 2020-04-10 at 15:43 +0100, Chris Wilson wrote:
> >> Flush the async power domain work after aborting the module probe:
> >> 
> >> <3> [307.785552] ODEBUG: free active (active state 0) object type:
> >> timer_list hint: intel_display_power_put_async_work+0x0/0xf0 [i915]
> >> 
> >> Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/1647
> >> Fixes: b664259f3fe2 ("drm/i915: split i915_driver_modeset_probe() to
> >> pre/post irq install")
> >> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> >> Cc: Jani Nikula <jani.nikula at intel.com>
> >> Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
> >> Cc: Imre Deak <imre.deak at intel.com>
> >> ---
> >>  drivers/gpu/drm/i915/i915_drv.c | 1 +
> >>  1 file changed, 1 insertion(+)
> >> 
> >> diff --git a/drivers/gpu/drm/i915/i915_drv.c
> >> b/drivers/gpu/drm/i915/i915_drv.c
> >> index a7a3b4b98572..13c1ce244092 100644
> >> --- a/drivers/gpu/drm/i915/i915_drv.c
> >> +++ b/drivers/gpu/drm/i915/i915_drv.c
> >> @@ -996,6 +996,7 @@ int i915_driver_probe(struct pci_dev *pdev, const
> >> struct pci_device_id *ent)
> >>  out_cleanup_modeset:
> >>      /* FIXME */
> >>  out_cleanup_hw:
> >> +    intel_power_domains_driver_remove(i915);
> >
> > If the failure happened in the first two returns of
> > i915_driver_modeset_probe_noirq() no call to
> > intel_power_domains_init_hw() would be made.
> >
> > I'm also working on this, will send to ML after a round on trybot:
> > https://patchwork.freedesktop.org/patch/361053/?series=75816&rev=1
> 
> Also https://patchwork.freedesktop.org/series/74021/

 * igt at i915_module_load@reload-with-fault-injection:
    - shard-skl:          [PASS][20] -> [INCOMPLETE][21] ([i915#671])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8019/shard-skl6/igt@i915_module_load@reload-with-fault-injection.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16734/shard-skl5/igt@i915_module_load@reload-with-fault-injection.html
    - shard-glk:          [PASS][22] -> [INCOMPLETE][23] ([i915#58] / [k.org#198133])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8019/shard-glk1/igt@i915_module_load@reload-with-fault-injection.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16734/shard-glk1/igt@i915_module_load@reload-with-fault-injection.html
    - shard-snb:          [PASS][24] -> [INCOMPLETE][25] ([i915#82])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8019/shard-snb2/igt@i915_module_load@reload-with-fault-injection.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16734/shard-snb2/igt@i915_module_load@reload-with-fault-injection.html
    - shard-iclb:         [PASS][26] -> [INCOMPLETE][27] ([i915#140])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8019/shard-iclb6/igt@i915_module_load@reload-with-fault-injection.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16734/shard-iclb2/igt@i915_module_load@reload-with-fault-injection.html
    - shard-tglb:         [PASS][1] -> [INCOMPLETE][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_8019/shard-tglb2/igt@i915_module_load@reload-with-fault-injection.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_16734/shard-tglb5/igt@i915_module_load@reload-with-fault-injection.html

A clean sweep!

Jose's series does appear to fix the incompletes, maybe we start with
that :)
-Chris


More information about the Intel-gfx mailing list