summary refs log tree commit diff
path: root/kernel/params.c
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2009-10-29 08:56:17 -0600
committerRusty Russell <rusty@rustcorp.com.au>2009-10-29 08:56:18 +1030
commitd553ad864e3b3dde3f1038d491e207021b2d6293 (patch)
tree2a6d4e482e72daf6056e1fb984407754e019f15a /kernel/params.c
parent65afac7d80ab3bc9f81e75eafb71eeb92a3ebdef (diff)
downloadlinux-d553ad864e3b3dde3f1038d491e207021b2d6293.tar.gz
param: fix NULL comparison on oom
kp->arg is always true: it's the contents of that pointer we care about.

Reported-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: stable@kernel.org
Diffstat (limited to 'kernel/params.c')
-rw-r--r--kernel/params.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/params.c b/kernel/params.c
index 95ef27cf8e82..00520c43d88c 100644
--- a/kernel/params.c
+++ b/kernel/params.c
@@ -222,7 +222,7 @@ int param_set_charp(const char *val, struct kernel_param *kp)
 	 * don't need to; this mangled commandline is preserved. */
 	if (slab_is_available()) {
 		*(char **)kp->arg = kstrdup(val, GFP_KERNEL);
-		if (!kp->arg)
+		if (!*(char **)kp->arg)
 			return -ENOMEM;
 	} else
 		*(const char **)kp->arg = val;