Messages in this thread | | | Date | Mon, 15 Jun 2009 23:20:35 -0700 | From | Greg KH <> | Subject | Re: [PATCH 012/143] USB: move twl4030_usb's probe function to .devinit.text |
| |
On Tue, Jun 16, 2009 at 08:05:59AM +0200, Uwe Kleine-König wrote: > Hi Greg, > > On Mon, Jun 15, 2009 at 10:22:07PM -0700, Greg Kroah-Hartman wrote: > > A pointer to twl4030_usb_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. > I wonder if this kind of error could be detected automatically. That is > at probe time check if the probe function is in the .init.text section.
There's nothing wrong with calling probe functions in the .init.text section, _before_ we throw away the init.text section :)
So we would have to somehow know when that happens.
thanks,
greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |