[PATCH] drm/exynos: resolve infinite loop issue on non multi-platform

Greg Kroah-Hartman gregkh at linuxfoundation.org
Fri Nov 7 08:27:04 PST 2014


On Fri, Nov 07, 2014 at 12:11:24PM +0100, Andrzej Hajda wrote:
> On 11/06/2014 06:08 PM, Sjoerd Simons wrote:
> > On Thu, 2014-11-06 at 23:10 +0900, Inki Dae wrote:
> >> This patch resovles the infinite loop issue incurred
> >> when Exyno drm driver is enabled but all kms drivers
> >> are disabled on Exynos board by returning -EPROBE_DEFER
> >> only in case that there is kms device registered.
> > 
> > It would be nice if you could explain in the commit message/comment why
> > returning -EPROBE_DEFER causes an infinite loop and why it's the wrong
> > thing to do in this case? 
> > 
> > Even if you know this probe will never succeed in the future (so
> > deferring is actually pointless), deferring really shouldn't trigger
> > infinte loops in calling code
> > 
> 
> +CC: Grant and Greg
> 
> It seems to be partly an issue with deferred probing. I guess it affects
> all drivers which in their probe can cause successful probe of
> sub-driver/sub-device, and after that the main driver defers probing,
> unwinding changes including removal of sub-driver/sub-device. Driver
> core incorrectly re-triggers probing in this case.
> 
> In this particular case it could be fixed in exynos_drm driver I guess,
> but maybe it would be good to fix deferred probing, if possible.

Patches are always gladly accepted :)


More information about the dri-devel mailing list