* [PATCH] sys_init_module refuses to load module without init code/data sections
@ 2002-11-19 19:38 Juan M. de la Torre
2002-11-20 7:35 ` Rusty Russell
0 siblings, 1 reply; 2+ messages in thread
From: Juan M. de la Torre @ 2002-11-19 19:38 UTC (permalink / raw)
To: Rusty Russell; +Cc: linux-kernel
load_module() stores in mod->init_size the size of init data and init
code sections, and later allocs (using module_alloc()) mod->init_size
bytes.
If the module has not init data and init code sections mod->init_size
is 0, so module_alloc() will return NULL and load_module() will abort
loading the module with -ENOMEM.
Possible patch attached, sorry if this is a known issue.
Best regards,
Juanma
--- linux-2.5.48/kernel/module.c.orig Tue Nov 19 20:08:52 2002
+++ linux-2.5.48/kernel/module.c Tue Nov 19 20:37:47 2002
@@ -972,13 +972,15 @@
memset(ptr, 0, mod->core_size);
mod->module_core = ptr;
- ptr = module_alloc(mod->init_size);
- if (!ptr) {
- err = -ENOMEM;
- goto free_core;
- }
- memset(ptr, 0, mod->init_size);
- mod->module_init = ptr;
+ if (mod->init_size) {
+ ptr = module_alloc(mod->init_size);
+ if (!ptr) {
+ err = -ENOMEM;
+ goto free_core;
+ }
+ memset(ptr, 0, mod->init_size);
+ mod->module_init = ptr;
+ }
/* Transfer each section which requires ALLOC, and set sh_offset
fields to absolute addresses. */
--
/jm
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2002-11-20 7:38 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-11-19 19:38 [PATCH] sys_init_module refuses to load module without init code/data sections Juan M. de la Torre
2002-11-20 7:35 ` Rusty Russell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox