summaryrefslogtreecommitdiff
path: root/kernel/module.c
diff options
context:
space:
mode:
authorPawel Moll <pawel.moll@arm.com>2012-03-26 12:50:51 +1030
committerRusty Russell <rusty@rustcorp.com.au>2012-03-26 12:50:51 +1030
commit026cee0086fe1df4cf74691cf273062cc769617d (patch)
tree22735ecd2132de4570fbad81e5716f7fee3448d5 /kernel/module.c
parent8b8252813dee8e8cd453bb219731c36b268c69a7 (diff)
params: <level>_initcall-like kernel parameters
This patch adds a set of macros that can be used to declare kernel parameters to be parsed _before_ initcalls at a chosen level are executed. We rename the now-unused "flags" field of struct kernel_param as the level. It's signed, for when we use this for early params as well, in future. Linker macro collating init calls had to be modified in order to add additional symbols between levels that are later used by the init code to split the calls into blocks. Signed-off-by: Pawel Moll <pawel.moll@arm.com> Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'kernel/module.c')
-rw-r--r--kernel/module.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/module.c b/kernel/module.c
index 7e31da9750c0..6f6651a54590 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -2923,7 +2923,8 @@ static struct module *load_module(void __user *umod,
mutex_unlock(&module_mutex);
/* Module is ready to execute: parsing args may do that. */
- err = parse_args(mod->name, mod->args, mod->kp, mod->num_kp, NULL);
+ err = parse_args(mod->name, mod->args, mod->kp, mod->num_kp,
+ -32768, 32767, NULL);
if (err < 0)
goto unlink;