Hi,

On Thu, Sep 06, 2012 at 05:58:27PM +0300, Pantelis Antoniou wrote:
> Hi Felipe,
> 
> A proper answer required some instrumentation printks().
> 
> So what I did is that I peppered each function marked with a removed
> __init or __devinit with a 
> 
> > printk(KERN_INFO "%s:%d (%s) %s\n", __FILE__, __LINE__, KBUILD_MODNAME, 
> > __func__);
> > 
> 
> Both omap2430 & musb_hdrc are compiled as module, and I issued the following 
> commands on a beagleboard xm.
> 
> # modprobe omap2430
> # modprobe g_mass_storage file=backing_file
> # rmmod g_mass_storage
> # rmmod omap2430
> # modprobe omap2430
> 
> The problem is obvious when you see that functions marked as init or devinit 
> are
> called when re-loading the omap2430 module again. Those functions if marked as
> much can (and will as I have witnessed) be removed from memory, leading to a 
> crash.
> 
> What do you think?

the problem would be with usage of __init. __devinit will only drop
.devinit.text if HOTPLUG and MODULE isn't set, AFAICT. I also can't see
a crash on below logs.

-- 
balbi

Attachment: signature.asc
Description: Digital signature

Reply via email to