diff options
author | Arnd Bergmann <arnd@arndb.de> | 2011-10-07 23:07:41 +0200 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2011-10-07 23:07:41 +0200 |
commit | 8efc59ad6764ade520012cb192cd484e5191cd9c (patch) | |
tree | d2465d91ebb2652e35cd08f715fc202b3f9e042a /init/main.c | |
parent | 6f6184a9d01880a3e21349544f73b3720ce5e152 (diff) | |
parent | 492c4a0df11573e141a2decc6012b3bddd14a11e (diff) |
Merge branch 'sirf/cleanup' into next/cleanup
Diffstat (limited to 'init/main.c')
-rw-r--r-- | init/main.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/init/main.c b/init/main.c index 9c51ee7adf3..2a9b88aa5e7 100644 --- a/init/main.c +++ b/init/main.c @@ -209,8 +209,19 @@ early_param("quiet", quiet_kernel); static int __init loglevel(char *str) { - get_option(&str, &console_loglevel); - return 0; + int newlevel; + + /* + * Only update loglevel value when a correct setting was passed, + * to prevent blind crashes (when loglevel being set to 0) that + * are quite hard to debug + */ + if (get_option(&str, &newlevel)) { + console_loglevel = newlevel; + return 0; + } + + return -EINVAL; } early_param("loglevel", loglevel); |