diff options
author | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2009-06-12 04:26:20 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2009-06-12 04:27:28 -0400 |
commit | 7aa79f948749da7de3de0c427e9c9ee0ff595243 (patch) | |
tree | 5218d7b085e447165639081c49ceedafacc74ce5 /arch | |
parent | 8ebf975608aaebd7feb33d77f07ba21a6380e086 (diff) |
[S390] vdso: kernel parameter syntax
The syntax of the vdso kernel parameter is documented as vdso=[on|off].
The implementation uses vdso=[0|1], an invalid parameter string disables
the vdso support. Fix the mismatch by adding vdso=[on|off] as additional
parameter syntax.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/s390/kernel/vdso.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/arch/s390/kernel/vdso.c b/arch/s390/kernel/vdso.c index 89b2e7f1b7a9..7b76ee4fb16c 100644 --- a/arch/s390/kernel/vdso.c +++ b/arch/s390/kernel/vdso.c | |||
@@ -53,8 +53,19 @@ unsigned int __read_mostly vdso_enabled = 1; | |||
53 | 53 | ||
54 | static int __init vdso_setup(char *s) | 54 | static int __init vdso_setup(char *s) |
55 | { | 55 | { |
56 | vdso_enabled = simple_strtoul(s, NULL, 0); | 56 | unsigned long val; |
57 | return 1; | 57 | int rc; |
58 | |||
59 | rc = 0; | ||
60 | if (strncmp(s, "on", 3) == 0) | ||
61 | vdso_enabled = 1; | ||
62 | else if (strncmp(s, "off", 4) == 0) | ||
63 | vdso_enabled = 0; | ||
64 | else { | ||
65 | rc = strict_strtoul(s, 0, &val); | ||
66 | vdso_enabled = rc ? 0 : !!val; | ||
67 | } | ||
68 | return !rc; | ||
58 | } | 69 | } |
59 | __setup("vdso=", vdso_setup); | 70 | __setup("vdso=", vdso_setup); |
60 | 71 | ||