This patch performs a check on the return value of percpu_modcopy
for the module load.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Index: linux-2.6.16-test/kernel/module.c
===================================================================
--- linux-2.6.16-test.orig/kernel/module.c 2006-05-17 04:32:28.000000000
-0400
+++ linux-2.6.16-test/kernel/module.c 2006-05-17 04:57:53.000000000 -0400
@@ -1819,8 +1819,11 @@ static struct module *load_module(void _
sort_extable(extable, extable + mod->num_exentries);
/* Finally, copy percpu area over. */
- percpu_modcopy(mod->percpu, (void *)sechdrs[pcpuindex].sh_addr,
- sechdrs[pcpuindex].sh_size);
+ err = percpu_modcopy(mod->percpu, (void *)sechdrs[pcpuindex].sh_addr,
+ sechdrs[pcpuindex].sh_size);
+
+ if (err < 0)
+ goto cleanup;
add_kallsyms(mod, sechdrs, symindex, strindex, secstrings);
|