On Sat, 11 Jul 2009, Uwe Kleine-König wrote: > A pointer to stk17ta8_rtc_probe is passed to the core via > platform_driver_register and so the function must not disappear when the > .init sections are discarded. Otherwise (if also having HOTPLUG=y) > unbinding and binding a device to the driver via sysfs will result in an > oops as does a device being registered late. > > An alternative to this patch is using platform_driver_probe instead of > platform_driver_register plus removing the pointer to the probe function > from the struct platform_driver. > > Signed-off-by: Uwe Kleine-König > Cc: Anton Vorontsov > Cc: Alessandro Zummo > Cc: David Brownell > Cc: Paul Mundt > Cc: Andrew Morton > Cc: Hannes Eder > Cc: Jiri Kosina > Cc: David Brownell > --- > drivers/rtc/rtc-stk17ta8.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/rtc/rtc-stk17ta8.c b/drivers/rtc/rtc-stk17ta8.c > index 7d1547b..d491eb2 100644 > --- a/drivers/rtc/rtc-stk17ta8.c > +++ b/drivers/rtc/rtc-stk17ta8.c > @@ -286,7 +286,7 @@ static struct bin_attribute stk17ta8_nvram_attr = { > .write = stk17ta8_nvram_write, > }; > > -static int __init stk17ta8_rtc_probe(struct platform_device *pdev) > +static int __devinit stk17ta8_rtc_probe(struct platform_device *pdev) > { > struct rtc_device *rtc; > struct resource *res; This seems to get lost ... should I take it through my tree, or is anyone going to merge it? Andrew? Alessandro? -- Jiri Kosina SUSE Labs, Novell Inc.