* [PATCH] drm/i915: Request driver probe from an async task @ 2018-03-23 8:30 Chris Wilson 2018-03-23 9:05 ` ✗ Fi.CI.BAT: failure for " Patchwork ` (4 more replies) 0 siblings, 5 replies; 10+ messages in thread From: Chris Wilson @ 2018-03-23 8:30 UTC (permalink / raw) To: intel-gfx 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@chris-wilson.co.uk> Cc: Imre Deak <imre.deak@intel.com> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: David Weinehall <david.weinehall@linux.intel.com> --- drivers/gpu/drm/i915/i915_pci.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c index 4364922e935d..be7b03d48229 100644 --- a/drivers/gpu/drm/i915/i915_pci.c +++ b/drivers/gpu/drm/i915/i915_pci.c @@ -726,6 +726,7 @@ static struct pci_driver i915_pci_driver = { .probe = i915_pci_probe, .remove = i915_pci_remove, .driver.pm = &i915_pm_ops, + .driver.probe_type = PROBE_PREFER_ASYNCHRONOUS, }; static int __init i915_init(void) -- 2.16.2 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 10+ messages in thread
* ✗ Fi.CI.BAT: failure for drm/i915: Request driver probe from an async task 2018-03-23 8:30 [PATCH] drm/i915: Request driver probe from an async task Chris Wilson @ 2018-03-23 9:05 ` Patchwork 2018-03-23 10:29 ` ✓ Fi.CI.BAT: success " Patchwork ` (3 subsequent siblings) 4 siblings, 0 replies; 10+ messages in thread From: Patchwork @ 2018-03-23 9:05 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: drm/i915: Request driver probe from an async task URL : https://patchwork.freedesktop.org/series/40547/ State : failure == Summary == Series 40547v1 drm/i915: Request driver probe from an async task https://patchwork.freedesktop.org/api/1.0/series/40547/revisions/1/mbox/ ---- Possible new issues: Test gem_exec_flush: Subgroup basic-wb-pro-default: pass -> INCOMPLETE (fi-skl-6770hq) Test gvt_basic: Subgroup invalid-placeholder-test: skip -> INCOMPLETE (fi-cnl-y3) ---- Known issues: Test kms_pipe_crc_basic: Subgroup suspend-read-crc-pipe-c: pass -> INCOMPLETE (fi-bxt-dsi) fdo#103927 pass -> DMESG-WARN (fi-cnl-y3) fdo#104951 fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927 fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951 fi-bdw-5557u total:285 pass:264 dwarn:0 dfail:0 fail:0 skip:21 time:436s fi-bdw-gvtdvm total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:446s fi-blb-e6850 total:285 pass:220 dwarn:1 dfail:0 fail:0 skip:64 time:379s fi-bsw-n3050 total:285 pass:239 dwarn:0 dfail:0 fail:0 skip:46 time:532s fi-bwr-2160 total:285 pass:180 dwarn:0 dfail:0 fail:0 skip:105 time:299s fi-bxt-dsi total:243 pass:216 dwarn:0 dfail:0 fail:0 skip:26 fi-bxt-j4205 total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:512s fi-byt-j1900 total:285 pass:250 dwarn:0 dfail:0 fail:0 skip:35 time:520s fi-byt-n2820 total:285 pass:246 dwarn:0 dfail:0 fail:0 skip:39 time:509s fi-cfl-8700k total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:418s fi-cfl-u total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:511s fi-cnl-drrs total:285 pass:254 dwarn:3 dfail:0 fail:0 skip:28 time:528s fi-cnl-y3 total:285 pass:258 dwarn:1 dfail:0 fail:0 skip:25 fi-elk-e7500 total:285 pass:225 dwarn:1 dfail:0 fail:0 skip:59 time:431s fi-gdg-551 total:285 pass:177 dwarn:0 dfail:0 fail:0 skip:108 time:319s fi-glk-1 total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:537s fi-hsw-4770 total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:403s fi-ilk-650 total:285 pass:225 dwarn:0 dfail:0 fail:0 skip:60 time:425s fi-ivb-3520m total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:477s fi-ivb-3770 total:285 pass:252 dwarn:0 dfail:0 fail:0 skip:33 time:429s fi-kbl-7500u total:285 pass:260 dwarn:1 dfail:0 fail:0 skip:24 time:479s fi-kbl-7567u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:474s fi-kbl-r total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:513s fi-pnv-d510 total:285 pass:219 dwarn:1 dfail:0 fail:0 skip:65 time:653s fi-skl-6260u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:442s fi-skl-6600u total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:542s fi-skl-6700k2 total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:509s fi-skl-6770hq total:58 pass:56 dwarn:0 dfail:0 fail:0 skip:1 fi-skl-guc total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:431s fi-skl-gvtdvm total:285 pass:262 dwarn:0 dfail:0 fail:0 skip:23 time:450s fi-snb-2520m total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:602s fi-snb-2600 total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:403s 9e3f06af248708774c765efd55bf8e883f24fbfd drm-tip: 2018y-03m-22d-21h-17m-42s UTC integration manifest 660ea53368eb drm/i915: Request driver probe from an async task == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8465/issues.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* ✓ Fi.CI.BAT: success for drm/i915: Request driver probe from an async task 2018-03-23 8:30 [PATCH] drm/i915: Request driver probe from an async task Chris Wilson 2018-03-23 9:05 ` ✗ Fi.CI.BAT: failure for " Patchwork @ 2018-03-23 10:29 ` Patchwork 2018-03-23 11:02 ` [PATCH] " Chris Wilson ` (2 subsequent siblings) 4 siblings, 0 replies; 10+ messages in thread From: Patchwork @ 2018-03-23 10:29 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: drm/i915: Request driver probe from an async task URL : https://patchwork.freedesktop.org/series/40547/ State : success == Summary == Series 40547v1 drm/i915: Request driver probe from an async task https://patchwork.freedesktop.org/api/1.0/series/40547/revisions/1/mbox/ ---- Known issues: Test kms_flip: Subgroup basic-flip-vs-wf_vblank: fail -> PASS (fi-skl-6770hq) fdo#100368 Test kms_pipe_crc_basic: Subgroup suspend-read-crc-pipe-b: incomplete -> PASS (fi-snb-2520m) fdo#103713 fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368 fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713 fi-bdw-5557u total:285 pass:264 dwarn:0 dfail:0 fail:0 skip:21 time:434s fi-bdw-gvtdvm total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:440s fi-blb-e6850 total:285 pass:220 dwarn:1 dfail:0 fail:0 skip:64 time:380s fi-bsw-n3050 total:285 pass:239 dwarn:0 dfail:0 fail:0 skip:46 time:537s fi-bwr-2160 total:285 pass:180 dwarn:0 dfail:0 fail:0 skip:105 time:301s fi-bxt-j4205 total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:514s fi-byt-j1900 total:285 pass:250 dwarn:0 dfail:0 fail:0 skip:35 time:520s fi-byt-n2820 total:285 pass:246 dwarn:0 dfail:0 fail:0 skip:39 time:507s fi-cfl-8700k total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:413s fi-cfl-u total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:508s fi-cnl-y3 total:285 pass:259 dwarn:0 dfail:0 fail:0 skip:26 time:591s fi-elk-e7500 total:285 pass:225 dwarn:1 dfail:0 fail:0 skip:59 time:427s fi-gdg-551 total:285 pass:176 dwarn:0 dfail:0 fail:1 skip:108 time:319s fi-glk-1 total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:534s fi-hsw-4770 total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:407s fi-ilk-650 total:285 pass:225 dwarn:0 dfail:0 fail:0 skip:60 time:423s fi-ivb-3520m total:285 pass:256 dwarn:0 dfail:0 fail:0 skip:29 time:474s fi-ivb-3770 total:285 pass:252 dwarn:0 dfail:0 fail:0 skip:33 time:428s fi-kbl-7500u total:285 pass:260 dwarn:1 dfail:0 fail:0 skip:24 time:478s fi-kbl-7567u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:466s fi-kbl-r total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:519s fi-pnv-d510 total:285 pass:219 dwarn:1 dfail:0 fail:0 skip:65 time:648s fi-skl-6260u total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:440s fi-skl-6600u total:285 pass:258 dwarn:0 dfail:0 fail:0 skip:27 time:530s fi-skl-6700k2 total:285 pass:261 dwarn:0 dfail:0 fail:0 skip:24 time:501s fi-skl-6770hq total:285 pass:265 dwarn:0 dfail:0 fail:0 skip:20 time:511s fi-skl-guc total:285 pass:257 dwarn:0 dfail:0 fail:0 skip:28 time:431s fi-skl-gvtdvm total:285 pass:262 dwarn:0 dfail:0 fail:0 skip:23 time:449s fi-snb-2520m total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:586s fi-snb-2600 total:285 pass:245 dwarn:0 dfail:0 fail:0 skip:40 time:404s Blacklisted hosts: fi-cfl-s3 total:285 pass:258 dwarn:0 dfail:0 fail:1 skip:26 time:550s fi-cnl-psr total:224 pass:198 dwarn:0 dfail:0 fail:1 skip:24 4db112a713cbe4fa2e65a2f1c5c21bf1076aae49 drm-tip: 2018y-03m-23d-09h-23m-53s UTC integration manifest 7a9c17decf7c drm/i915: Request driver probe from an async task == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8468/issues.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm/i915: Request driver probe from an async task 2018-03-23 8:30 [PATCH] drm/i915: Request driver probe from an async task Chris Wilson 2018-03-23 9:05 ` ✗ Fi.CI.BAT: failure for " Patchwork 2018-03-23 10:29 ` ✓ Fi.CI.BAT: success " Patchwork @ 2018-03-23 11:02 ` Chris Wilson 2018-03-23 11:22 ` ✗ Fi.CI.IGT: failure for " Patchwork 2018-04-26 12:41 ` [PATCH] " David Weinehall 4 siblings, 0 replies; 10+ messages in thread From: Chris Wilson @ 2018-03-23 11:02 UTC (permalink / raw) To: intel-gfx; +Cc: Imre Quoting Chris Wilson (2018-03-23 08:30:48) > 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@chris-wilson.co.uk> > Cc: Imre Deak <imre.deak@intel.com> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > Cc: David Weinehall <david.weinehall@linux.intel.com> For doing what it says on the tin, Tested-by: Paul Menzel <pmenzel@molgen.mpg.de> -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* ✗ Fi.CI.IGT: failure for drm/i915: Request driver probe from an async task 2018-03-23 8:30 [PATCH] drm/i915: Request driver probe from an async task Chris Wilson ` (2 preceding siblings ...) 2018-03-23 11:02 ` [PATCH] " Chris Wilson @ 2018-03-23 11:22 ` Patchwork 2018-04-26 12:41 ` [PATCH] " David Weinehall 4 siblings, 0 replies; 10+ messages in thread From: Patchwork @ 2018-03-23 11:22 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx == Series Details == Series: drm/i915: Request driver probe from an async task URL : https://patchwork.freedesktop.org/series/40547/ State : failure == Summary == ---- Possible new issues: Test drv_selftest: Subgroup live_objects: pass -> INCOMPLETE (shard-apl) Test kms_flip: Subgroup busy-flip: fail -> PASS (shard-apl) ---- Known issues: Test gem_softpin: Subgroup noreloc-s3: incomplete -> PASS (shard-hsw) fdo#103540 Test kms_flip: Subgroup 2x-flip-vs-blocking-wf-vblank: fail -> PASS (shard-hsw) fdo#100368 +1 Subgroup 2x-flip-vs-expired-vblank: fail -> PASS (shard-hsw) fdo#102887 Test kms_setmode: Subgroup basic: pass -> FAIL (shard-apl) fdo#99912 fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540 fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368 fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887 fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912 shard-apl total:3459 pass:1795 dwarn:1 dfail:0 fail:7 skip:1655 time:12587s shard-hsw total:3484 pass:1773 dwarn:1 dfail:0 fail:2 skip:1707 time:11736s shard-snb total:3484 pass:1363 dwarn:1 dfail:0 fail:3 skip:2117 time:7239s Blacklisted hosts: shard-kbl total:3484 pass:1943 dwarn:1 dfail:0 fail:11 skip:1529 time:9976s == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8468/shards.html _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm/i915: Request driver probe from an async task 2018-03-23 8:30 [PATCH] drm/i915: Request driver probe from an async task Chris Wilson ` (3 preceding siblings ...) 2018-03-23 11:22 ` ✗ Fi.CI.IGT: failure for " Patchwork @ 2018-04-26 12:41 ` David Weinehall 2018-04-26 12:55 ` Chris Wilson 2018-04-26 12:56 ` Imre Deak 4 siblings, 2 replies; 10+ messages in thread From: David Weinehall @ 2018-04-26 12:41 UTC (permalink / raw) To: Chris Wilson; +Cc: intel-gfx 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@chris-wilson.co.uk> LGTM, and still seems to apply cleanly. Reviewed-by: David Weinehall <david.weinehall@linux.intel.com> > Cc: Imre Deak <imre.deak@intel.com> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > Cc: David Weinehall <david.weinehall@linux.intel.com> > --- > drivers/gpu/drm/i915/i915_pci.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c > index 4364922e935d..be7b03d48229 100644 > --- a/drivers/gpu/drm/i915/i915_pci.c > +++ b/drivers/gpu/drm/i915/i915_pci.c > @@ -726,6 +726,7 @@ static struct pci_driver i915_pci_driver = { > .probe = i915_pci_probe, > .remove = i915_pci_remove, > .driver.pm = &i915_pm_ops, > + .driver.probe_type = PROBE_PREFER_ASYNCHRONOUS, > }; > > static int __init i915_init(void) > -- > 2.16.2 > _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm/i915: Request driver probe from an async task 2018-04-26 12:41 ` [PATCH] " David Weinehall @ 2018-04-26 12:55 ` Chris Wilson 2018-04-26 12:56 ` Imre Deak 1 sibling, 0 replies; 10+ messages in thread From: Chris Wilson @ 2018-04-26 12:55 UTC (permalink / raw) To: David Weinehall; +Cc: Imre, intel-gfx Quoting David Weinehall (2018-04-26 13:41:57) > 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@chris-wilson.co.uk> > > LGTM, and still seems to apply cleanly. > > Reviewed-by: David Weinehall <david.weinehall@linux.intel.com> The one downside to this was that it's only useful for builtins. For modules, the finit_module call serialises on the async task, so parallelisation has to occur in userspace. > > Cc: Imre Deak <imre.deak@intel.com> > > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Cc: David Weinehall <david.weinehall@linux.intel.com> > > --- > > drivers/gpu/drm/i915/i915_pci.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c > > index 4364922e935d..be7b03d48229 100644 > > --- a/drivers/gpu/drm/i915/i915_pci.c > > +++ b/drivers/gpu/drm/i915/i915_pci.c > > @@ -726,6 +726,7 @@ static struct pci_driver i915_pci_driver = { > > .probe = i915_pci_probe, > > .remove = i915_pci_remove, > > .driver.pm = &i915_pm_ops, > > + .driver.probe_type = PROBE_PREFER_ASYNCHRONOUS, I thought I sent a v2 with IS_BUILTIN() ? PREFER_ASYNC : 0, possibly not. -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm/i915: Request driver probe from an async task 2018-04-26 12:41 ` [PATCH] " David Weinehall 2018-04-26 12:55 ` Chris Wilson @ 2018-04-26 12:56 ` Imre Deak 2018-04-27 8:04 ` Jani Nikula 1 sibling, 1 reply; 10+ messages in thread From: Imre Deak @ 2018-04-26 12:56 UTC (permalink / raw) To: Chris Wilson, intel-gfx, Ville Syrjälä; +Cc: Takashi Iwai 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@chris-wilson.co.uk> > > LGTM, and still seems to apply cleanly. > > Reviewed-by: David Weinehall <david.weinehall@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 > > > Cc: Imre Deak <imre.deak@intel.com> > > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Cc: David Weinehall <david.weinehall@linux.intel.com> > > --- > > drivers/gpu/drm/i915/i915_pci.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c > > index 4364922e935d..be7b03d48229 100644 > > --- a/drivers/gpu/drm/i915/i915_pci.c > > +++ b/drivers/gpu/drm/i915/i915_pci.c > > @@ -726,6 +726,7 @@ static struct pci_driver i915_pci_driver = { > > .probe = i915_pci_probe, > > .remove = i915_pci_remove, > > .driver.pm = &i915_pm_ops, > > + .driver.probe_type = PROBE_PREFER_ASYNCHRONOUS, > > }; > > > > static int __init i915_init(void) > > -- > > 2.16.2 > > _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm/i915: Request driver probe from an async task 2018-04-26 12:56 ` Imre Deak @ 2018-04-27 8:04 ` Jani Nikula 2018-04-28 8:16 ` Takashi Iwai 0 siblings, 1 reply; 10+ messages in thread From: Jani Nikula @ 2018-04-27 8:04 UTC (permalink / raw) To: imre.deak, Chris Wilson, intel-gfx, Ville Syrjälä Cc: Takashi Iwai, Shi, Yang A On Thu, 26 Apr 2018, Imre Deak <imre.deak@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@chris-wilson.co.uk> >> >> LGTM, and still seems to apply cleanly. >> >> Reviewed-by: David Weinehall <david.weinehall@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... BR, Jani. > >> >> > Cc: Imre Deak <imre.deak@intel.com> >> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> >> > Cc: David Weinehall <david.weinehall@linux.intel.com> >> > --- >> > drivers/gpu/drm/i915/i915_pci.c | 1 + >> > 1 file changed, 1 insertion(+) >> > >> > diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c >> > index 4364922e935d..be7b03d48229 100644 >> > --- a/drivers/gpu/drm/i915/i915_pci.c >> > +++ b/drivers/gpu/drm/i915/i915_pci.c >> > @@ -726,6 +726,7 @@ static struct pci_driver i915_pci_driver = { >> > .probe = i915_pci_probe, >> > .remove = i915_pci_remove, >> > .driver.pm = &i915_pm_ops, >> > + .driver.probe_type = PROBE_PREFER_ASYNCHRONOUS, >> > }; >> > >> > static int __init i915_init(void) >> > -- >> > 2.16.2 >> > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Jani Nikula, Intel Open Source Technology Center _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] drm/i915: Request driver probe from an async task 2018-04-27 8:04 ` Jani Nikula @ 2018-04-28 8:16 ` Takashi Iwai 0 siblings, 0 replies; 10+ messages in thread From: Takashi Iwai @ 2018-04-28 8:16 UTC (permalink / raw) To: Jani Nikula; +Cc: Shi, Yang A, intel-gfx On Fri, 27 Apr 2018 10:04:13 +0200, Jani Nikula wrote: > > On Thu, 26 Apr 2018, Imre Deak <imre.deak@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@chris-wilson.co.uk> > >> > >> LGTM, and still seems to apply cleanly. > >> > >> Reviewed-by: David Weinehall <david.weinehall@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 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2018-04-28 8:16 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-03-23 8:30 [PATCH] drm/i915: Request driver probe from an async task Chris Wilson 2018-03-23 9:05 ` ✗ Fi.CI.BAT: failure for " Patchwork 2018-03-23 10:29 ` ✓ Fi.CI.BAT: success " Patchwork 2018-03-23 11:02 ` [PATCH] " Chris Wilson 2018-03-23 11:22 ` ✗ Fi.CI.IGT: failure for " Patchwork 2018-04-26 12:41 ` [PATCH] " David Weinehall 2018-04-26 12:55 ` Chris Wilson 2018-04-26 12:56 ` Imre Deak 2018-04-27 8:04 ` Jani Nikula 2018-04-28 8:16 ` Takashi Iwai
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.