How to understand the macro __init?

王哲 wangzhe5004 at gmail.com
Thu Aug 16 11:13:37 EDT 2012


2012/8/16 Amarnath Revanna <amarnath.revanna at gmail.com>

> 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
>

   Hi Amar

       Thank you  very much  for reply. I often write loadable modules,but
know little about
built-in modules,can you tell something about built-in modules? or,how i
can take a built-in
module into the kernel?


> On Thu, Aug 16, 2012 at 5:23 PM, Vijay Chauhan <kernel.vijay at gmail.com>wrote:
>
>> Hi,
>>
>> On Tue, Aug 14, 2012 at 9:34 AM, Mulyadi Santosa
>> <mulyadi.santosa at gmail.com> wrote:
>> > Hi.. :)
>> >
>> > On Tue, Aug 14, 2012 at 9:14 AM, 王哲 <wangzhe5004 at gmail.com> 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
>> > Kernelnewbies at kernelnewbies.org
>> > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>>
>> _______________________________________________
>> Kernelnewbies mailing list
>> Kernelnewbies at kernelnewbies.org
>> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20120816/a7af0625/attachment.html 


More information about the Kernelnewbies mailing list