Hi Vijay,

Is this a loadable kernel module or a built-in module?
If it is a loadable module, everything still remains in the memory without
being freed.

Functions and data defined with __init gets freed after their execution
only if these are part of built-in kernel modules.

In your case, if the module is a loadable one, you can still access the
print_k() from hello_exit() as its still residing in memory.

Regards,
-Amar

On Thu, Aug 16, 2012 at 5:23 PM, Vijay Chauhan <[email protected]>wrote:

> Hi,
>
> On Tue, Aug 14, 2012 at 9:34 AM, Mulyadi Santosa
> <[email protected]> wrote:
> > Hi.. :)
> >
> > On Tue, Aug 14, 2012 at 9:14 AM, 王哲 <[email protected]> wrote:
> >> i use the __init for function print_k.
> >> in my opinion  after the fisrt invoking the print_k in the hello_init.
> >> the memory of print_k will be freed,and the second invoking will
> >> not be executed.but the result of second invoking is executing .
> >>
> >> why?
> >
> > because you're still in module_init.... :)
> >
> > right after modul init stage is done, _init marked function is thrown
> away...
>
>
> Even if we call  print_k() function inside hello_exit, it still works.
> At that point __init hello_init execution is over. How its still
> working?
>
>
> Regards,
> Vijay
>
> >
> > --
> > regards,
> >
> > Mulyadi Santosa
> > Freelance Linux trainer and consultant
> >
> > blog: the-hydra.blogspot.com
> > training: mulyaditraining.blogspot.com
> >
> > _______________________________________________
> > Kernelnewbies mailing list
> > [email protected]
> > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
> _______________________________________________
> Kernelnewbies mailing list
> [email protected]
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
_______________________________________________
Kernelnewbies mailing list
[email protected]
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

Reply via email to