Date: Sun, 14 Aug 2005 22:47:17 GMT From: Antoine Pelisse <apelisse@gmail.com> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/84935: [PATCH] Panic in kern_exec.c Message-ID: <200508142247.j7EMlHkr055715@www.freebsd.org> Resent-Message-ID: <200508142320.j7ENKEFO015759@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 84935 >Category: kern >Synopsis: [PATCH] Panic in kern_exec.c >Confidential: no >Severity: critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Aug 14 23:20:14 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Antoine Pelisse >Release: 7-CURRENT >Organization: Xloling >Environment: FreeBSD 7.0-CURRENT: Sun Aug 14 23:38:35 CEST 2005 >Description: Fix for panic: http://people.freebsd.org/~pho/stress/log/cons151.html >How-To-Repeat: >Fix: --- kern/kern_exec.c.orig Sun Aug 14 22:39:41 2005 +++ kern/kern_exec.c Sun Aug 14 22:43:16 2005 @@ -667,7 +667,14 @@ /* Cache arguments if they fit inside our allowance */ if (ps_arg_cache_limit >= i + sizeof(struct pargs)) { + /* + * the lock needs to be released as begin_argv is + * stored in pageable memory (allocated with + * kmem_alloc_wait) + */ + PROC_UNLOCK(p); bcopy(imgp->args->begin_argv, newargs->ar_args, i); + PROC_LOCK(p); p->p_args = newargs; newargs = NULL; } Feel free to modify the comment, Regards. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200508142247.j7EMlHkr055715>