From b9f5e50421eacf3ef064752d2c3971fcfdaa5c3f Mon Sep 17 00:00:00 2001 From: Erik van der Kouwe Date: Fri, 20 Aug 2010 11:07:16 +0000 Subject: [PATCH] Provide boot image process main functions with a full parameter list, so that bad things don't heppen when using getenv --- kernel/main.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel/main.c b/kernel/main.c index 049a1a0da..6f0df871c 100644 --- a/kernel/main.c +++ b/kernel/main.c @@ -183,13 +183,13 @@ PUBLIC int main(void) rp->p_reg.pc = 0; /* we cannot start anything else */ rp->p_reg.psw = (iskerneln(proc_nr)) ? INIT_TASK_PSW : INIT_PSW; - /* Initialize the server stack pointer. Take it down one word - * to give crtso.s something to use as "argc". + /* Initialize the server stack pointer. Take it down three words + * to give crtso.s something to use as "argc", "argv" and "envp". */ if (isusern(proc_nr)) { /* user-space process? */ rp->p_reg.sp = (rp->p_memmap[S].mem_vir + rp->p_memmap[S].mem_len) << CLICK_SHIFT; - rp->p_reg.sp -= sizeof(reg_t); + rp->p_reg.sp -= 3 * sizeof(reg_t); } /* scheduling functions depend on proc_ptr pointing somewhere. */ -- 2.44.0