[Devel] Re: [PATCH][NETNS] Move some code into __init section when CONFIG_NET_NS=n (v2)

David Miller davem at davemloft.net
Mon Oct 8 20:38:57 PDT 2007


From: Pavel Emelyanov <xemul at openvz.org>
Date: Mon, 08 Oct 2007 17:20:01 +0400

> With the net namespaces many code leaved the __init section,
> thus making the kernel occupy more memory than it did before.
> Since we have a config option that prohibits the namespace
> creation, the functions that initialize/finalize some netns
> stuff are simply not needed and can be freed after the boot.
> 
> Currently, this is almost not noticeable, since few calls
> are no longer in __init, but when the namespaces will be
> merged it will be possible to free more code. I propose to 
> use the __net_init, __net_exit and __net_initdata "attributes"
> for functions/variables that are not used if the CONFIG_NET_NS
> is not set to save more space in memory.
> 
> The exiting functions cannot just reside in the __exit section,
> as noticed by David, since the init section will have 
> references on it and the compilation will fail due to modpost 
> checks. These references can exist, since the init namespace 
> never dies and the exit callbacks are never called. So I 
> introduce the __exit_refok attribute just like it is already 
> done with the __init_refok.
> 
> Signed-off-by: Pavel Emelyanov <xemul at openvz.org>

Applied, thanks for fixing this up Pavel.




More information about the Devel mailing list