[Intel-gfx] [PATCH] drm/i915: Request driver probe from an async task

Takashi Iwai tiwai at suse.de
Sat Apr 28 08:16:24 UTC 2018


On Fri, 27 Apr 2018 10:04:13 +0200,
Jani Nikula wrote:
> 
> On Thu, 26 Apr 2018, Imre Deak <imre.deak at intel.com> wrote:
> > On Thu, Apr 26, 2018 at 03:41:57PM +0300, David Weinehall wrote:
> >> On Fri, Mar 23, 2018 at 08:30:48AM +0000, Chris Wilson wrote:
> >> > As we are careful not to register external interfaces before the
> >> > internals are brought up, we are not dependent upon a synchronous
> >> > probing and can allow ourselves to be probed from a secondary thread
> >> > during system bootup. We already do relegate some configuration to
> >> > asynchronous tasks (such as setting up the fbdev), now do the entire
> >> > probe.
> >> > 
> >> > References: https://bugs.freedesktop.org/show_bug.cgi?id=105622
> >> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> >> 
> >> LGTM, and still seems to apply cleanly.
> >> 
> >> Reviewed-by: David Weinehall <david.weinehall at linux.intel.com>
> >
> > One problem with this is that atm in snd_hdac_i915_init()
> > request_module() is expected to return only once the i915 probe function
> > has run. With async probing this won't be any more the case.
> >
> > +Takashi
> 
> As I wrote to Yang (Cc'd) in the context of another patch, one approach
> that takes care of this would be adding a completion in hdac_i915.c,
> waiting for it with a timeout below request_module("i915") in
> snd_hdac_i915_init(), and completing it in
> hdac_component_master_bind(). How long the timeout should be is anyone's
> guess...

Yes, that's also a workaround I'd take at next.
Also the code can have a vgacon_text_force() check to skip the
nomodeset case, at least, too.


thanks,

Takashi


More information about the Intel-gfx mailing list