Re: [PATCH] [RFC] OF: probe order dependency aware of_platform_populate
From: Geert Uytterhoeven <hidden>
Date: 2015-03-24 14:50:48
Hi Pantelis, Grant, On Fri, Mar 20, 2015 at 12:39 PM, Pantelis Antoniou [off-list ref] wrote:
quoted
On Mar 19, 2015, at 21:18 , Grant Likely [off-list ref] wrote: On Tue, 16 Dec 2014 14:11:31 +0200 , Pantelis Antoniou [off-list ref] wrote:quoted
A nice side-effect of the changes in DTC for supporting overlays is that it is now possible to do dependency tracking of platform devices automatically. This patch implements dependency aware probe order for users of of_platform_populate. There are no changes in the syntax of the DTS bindings, the dependency is generated automatically by the use of phandle references.Do you have measurements showing improvement? Conceptually, I don't have a problem with having a small scale solution like this, but I want proof that it actively makes things better, and is worth the extra complexity. It's not an easy block of code to understand.I will be the first to admit that the code it’s a bit hard to follow, but that’s the nature of trees and recursion. FWIW I’ve been booting with this applied for a month with no adverse effects, besides the fact that there dependency cycles which I would file as a bug.
IIUC, this would fix the issue I worked around in "ARM: shmobile: r8a73a4: Move pfc node to work around probe ordering bug"? https://git.kernel.org/cgit/linux/kernel/git/horms/renesas.git/commit/?h=r8a73a4-ccf-and-multiplatform-for-v4.1&id=e4ba0a9bddff3ba52cec100414d2f178440efc91 I'll give it a try when I'm back from ELC... Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html