2006-09-17 05:10:10

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH] config.gz doesn't need module_exit

From: Randy Dunlap <[email protected]>

This is an alternative patch to the current /proc/config.gz
'module' patch from Ross. Pointed out by Alexey.

/proc/config.gz handler doesn't need module_exit() since it
isn't built as a module and the exit function won't be used
when the code is built into the kernel.

Signed-off-by: Randy Dunlap <[email protected]>
---
kernel/configs.c | 9 ---------
1 files changed, 9 deletions(-)

--- linux-2618-rc7work.orig/kernel/configs.c
+++ linux-2618-rc7work/kernel/configs.c
@@ -99,16 +99,7 @@ static int __init ikconfig_init(void)
return 0;
}

-/***************************************************/
-/* ikconfig_cleanup: clean up our mess */
-
-static void __exit ikconfig_cleanup(void)
-{
- remove_proc_entry("config.gz", &proc_root);
-}
-
module_init(ikconfig_init);
-module_exit(ikconfig_cleanup);

MODULE_LICENSE("GPL");
MODULE_AUTHOR("Randy Dunlap");


---


2006-09-17 05:24:15

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] config.gz doesn't need module_exit

On Sat, 16 Sep 2006 15:11:22 -0700
"Randy.Dunlap" <[email protected]> wrote:

> From: Randy Dunlap <[email protected]>
>
> This is an alternative patch to the current /proc/config.gz
> 'module' patch from Ross. Pointed out by Alexey.
>
> /proc/config.gz handler doesn't need module_exit() since it
> isn't built as a module and the exit function won't be used
> when the code is built into the kernel.

It doesn't buy us much though - the __exit code is all freed up
at runtime.

Or it should be. arch/i386/kernel/vmlinux.lds.S says

/* .exit.text is discard at runtime, not link time, to deal with references
from .altinstructions and .eh_frame */

but free_initmem() doesn't free it.