The patch titled
Subject: param: fix crash on bad kernel arguments
has been added to the -mm tree. Its filename is
param-fix-crash-on-bad-kernel-arguments.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/param-fix-crash-on-bad-kernel-arguments.patch
echo and later at
echo
http://ozlabs.org/~akpm/mmotm/broken-out/param-fix-crash-on-bad-kernel-arguments.patch
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/SubmitChecklist when testing your code ***
The -mm tree is included into linux-next and is updated
there every 3-4 working days
------------------------------------------------------
From: Daniel Thompson <[email protected]>
Subject: param: fix crash on bad kernel arguments
Currently if the user passes an invalid value on the kernel command line
then the kernel will crash during argument parsing. On most systems this
is very hard to debug because the console hasn't been initialized yet.
This is a regression due to commit 51e158c12aca ("param: hand arguments
after -- straight to init") which, in response to the systemd debug
controversy, made it possible to explicitly pass arguments to init. To
achieve this parse_args() was extended from simply returning an error code
to returning a pointer. Regretably the new init args logic does not
perform a proper validity check on the pointer resulting in a crash.
This patch fixes the validity check. Should the check fail then no
arguments will be passed to init. This is reasonable and matches how the
kernel treats its own arguments (i.e. no error recovery).
Signed-off-by: Daniel Thompson <[email protected]>
Cc: Rusty Russell <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
---
init/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff -puN init/main.c~param-fix-crash-on-bad-kernel-arguments init/main.c
--- a/init/main.c~param-fix-crash-on-bad-kernel-arguments
+++ a/init/main.c
@@ -538,7 +538,7 @@ asmlinkage __visible void __init start_k
static_command_line, __start___param,
__stop___param - __start___param,
-1, -1, &unknown_bootoption);
- if (after_dashes)
+ if (!IS_ERR_OR_NULL(after_dashes))
parse_args("Setting init args", after_dashes, NULL, 0, -1, -1,
set_init_arg);
_
Patches currently in -mm which might be from [email protected] are
param-fix-crash-on-bad-kernel-arguments.patch
kgdb-timeout-if-secondary-cpus-ignore-the-roundup.patch
linux-next.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html