From b61c2547b8b489cab16984c0940a1cb6593a2a3d Mon Sep 17 00:00:00 2001 From: rtm Date: Mon, 26 Jun 2006 20:31:52 +0000 Subject: system call return values initialize 2nd cpu's idt --- proc.c | 1 + 1 file changed, 1 insertion(+) (limited to 'proc.c') diff --git a/proc.c b/proc.c index 9247cc7..e8a911d 100644 --- a/proc.c +++ b/proc.c @@ -73,6 +73,7 @@ newproc() // set up kernel stack to return to user space np->tf = (struct Trapframe *) (np->kstack + KSTACKSIZE - sizeof(struct Trapframe)); *(np->tf) = *(op->tf); + np->tf->tf_regs.reg_eax = 0; // so fork() returns 0 in child sp = (unsigned *) np->tf; *(--sp) = (unsigned) &trapret; // for return from swtch() *(--sp) = 0; // previous bp for leave in swtch() -- cgit v1.2.3