Messages in this thread Patch in this message | | | Date | Sat, 21 Nov 2009 18:31:04 +0800 | From | Américo Wang <> | Subject | Re: [PATCH] x86: suppress stack overrun message for init_task |
| |
On Fri, Nov 20, 2009 at 02:00:14PM +0000, Jan Beulich wrote: >init_task doesn't get its stack end location set to STACK_END_MAGIC, >and hence the message is confusing rather than helpful in this case. > >Signed-off-by: Jan Beulich <jbeulich@novell.com> >
How about the patch below? It is totally untested. ;)
-------------->
init process should also write STACK_END_MAGIC to the end of its stack.
Signed-off-by: WANG Cong <xiyou.wangcong@gmail.com>
---- diff --git a/init/main.c b/init/main.c index 5988deb..5a8f1b9 100644 --- a/init/main.c +++ b/init/main.c @@ -69,6 +69,7 @@ #include <linux/kmemtrace.h> #include <linux/sfi.h> #include <linux/shmem_fs.h> +#include <linux/magic.h> #include <trace/boot.h> #include <asm/io.h> @@ -798,7 +799,9 @@ static void __init do_pre_smp_initcalls(void) static void run_init_process(char *init_filename) { + unsigned long *stack_end = end_of_stack(&init_task); argv_init[0] = init_filename; + *stack_end = STACK_END_MAGIC; kernel_execve(init_filename, argv_init, envp_init); }
| |