Module Name: src Committed By: uebayasi Date: Fri Apr 11 11:21:29 UTC 2014
Modified Files: src/sys/kern: kern_exec.c Log Message: Protect not only proc::p_flag but also lwp::l_ctxlink and proc::p_acflag with proc:p_lock. To generate a diff of this commit: cvs rdiff -u -r1.379 -r1.380 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/kern/kern_exec.c diff -u src/sys/kern/kern_exec.c:1.379 src/sys/kern/kern_exec.c:1.380 --- src/sys/kern/kern_exec.c:1.379 Fri Apr 11 11:11:06 2014 +++ src/sys/kern/kern_exec.c Fri Apr 11 11:21:29 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_exec.c,v 1.379 2014/04/11 11:11:06 uebayasi Exp $ */ +/* $NetBSD: kern_exec.c,v 1.380 2014/04/11 11:21:29 uebayasi Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -59,7 +59,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.379 2014/04/11 11:11:06 uebayasi Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.380 2014/04/11 11:21:29 uebayasi Exp $"); #include "opt_exec.h" #include "opt_execfmt.h" @@ -1193,11 +1193,9 @@ execve_runproc(struct lwp *l, struct exe execsigs(p); /* reset catched signals */ + mutex_enter(p->p_lock); l->l_ctxlink = NULL; /* reset ucontext link */ - - p->p_acflag &= ~AFORK; - mutex_enter(p->p_lock); p->p_flag |= PK_EXEC; mutex_exit(p->p_lock);