From mboxrd@z Thu Jan 1 00:00:00 1970 From: Geert Uytterhoeven Date: Tue, 19 Mar 2013 09:04:32 +0000 Subject: Re: [PATCH 10/10] drivers: misc: use module_platform_driver_probe() Message-Id: List-Id: References: <1363266691-15757-1-git-send-email-fabio.porcedda@gmail.com> <201303181058.51641.arnd@arndb.de> <201303181128.45215.arnd@arndb.de> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-arm-kernel@lists.infradead.org On Tue, Mar 19, 2013 at 9:55 AM, Fabio Porcedda wrote: > On Mon, Mar 18, 2013 at 12:28 PM, Arnd Bergmann wrote: >> On Monday 18 March 2013, Fabio Porcedda wrote: >>> On Mon, Mar 18, 2013 at 11:58 AM, Arnd Bergmann wrote: >>> > On Monday 18 March 2013, Fabio Porcedda wrote: >>> >> Since by using platform_driver_probe() the function >>> >> ep93xx_pwm_probe() is freed after initialization, >>> >> is better to use module_platform_drive_probe(). >>> >> IMHO i don't see any good reason to use module_platform_driver() for >>> >> this driver. >>> > >>> > As I commented earlier, the platform_driver_probe() and >>> > module_platform_drive_probe() interfaces are rather dangerous in combination >>> > with deferred probing, I would much prefer Harley's patch. >>> >>> Since those drivers don't use -EPROBE_DEFER i was thinking that they don't use >>> deferred probing. >>> I'm missing something? >> >> clk_get() may return -EPROBE_DEFER after ep93xx is converted to use the >> common clk API. We currently return the value of clk_get from the probe() >> function, which will automatically do the right thing as long as the probe >> function remains reachable. > > Thanks for the explanation. Hmm, so we may have drivers that (now) work perfectly fine with module_platform_driver_probe()/platform_driver_probe(), but will start failing suddenly in the future? I guess we need a big fat WARN_ON(-EPROBE_DEFER) in platform_driver_probe() to catch these? 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