diff options
author | Cyrill Gorcunov <gorcunov@openvz.org> | 2012-11-24 22:17:13 +0100 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2012-12-02 15:23:04 +0100 |
commit | 5479c78ac6f688ea5ea8c49b44cf90ea87b63931 (patch) | |
tree | 449331a4649fb1dd019509d6c5a7ae71bbc05157 /mm/percpu.c | |
parent | percpu: make pcpu_free_chunk() use pcpu_mem_free() instead of kfree() (diff) | |
download | linux-5479c78ac6f688ea5ea8c49b44cf90ea87b63931.tar.xz linux-5479c78ac6f688ea5ea8c49b44cf90ea87b63931.zip |
mm, percpu: Make sure percpu_alloc early parameter has an argument
Otherwise we are getting a nil dereference if percpu_alloc kernel boot
argument is specified without value.
| [ 0.000000] BUG: unable to handle kernel NULL pointer dereference at (null)
| [ 0.000000] IP: [<ffffffff81391360>] strcmp+0x10/0x30
Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'mm/percpu.c')
-rw-r--r-- | mm/percpu.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/percpu.c b/mm/percpu.c index ec2589616e7d..8c8e08f3a692 100644 --- a/mm/percpu.c +++ b/mm/percpu.c @@ -1380,6 +1380,9 @@ enum pcpu_fc pcpu_chosen_fc __initdata = PCPU_FC_AUTO; static int __init percpu_alloc_setup(char *str) { + if (!str) + return -EINVAL; + if (0) /* nada */; #ifdef CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK |