From owner-freebsd-bugs@FreeBSD.ORG Sun Feb 15 14:30:23 2004 Return-Path: Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7E23016A4CE for ; Sun, 15 Feb 2004 14:30:23 -0800 (PST) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6100043D1D for ; Sun, 15 Feb 2004 14:30:23 -0800 (PST) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) i1FMUNbv058724 for ; Sun, 15 Feb 2004 14:30:23 -0800 (PST) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.10/8.12.10/Submit) id i1FMUNSd058719; Sun, 15 Feb 2004 14:30:23 -0800 (PST) (envelope-from gnats) Resent-Date: Sun, 15 Feb 2004 14:30:23 -0800 (PST) Resent-Message-Id: <200402152230.i1FMUNSd058719@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Stephan Uphoff Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C473416A4CE for ; Sun, 15 Feb 2004 14:25:36 -0800 (PST) Received: from www.freebsd.org (www.freebsd.org [216.136.204.117]) by mx1.FreeBSD.org (Postfix) with ESMTP id BF5C343D1D for ; Sun, 15 Feb 2004 14:25:36 -0800 (PST) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.12.10/8.12.10) with ESMTP id i1FMPa72056542 for ; Sun, 15 Feb 2004 14:25:36 -0800 (PST) (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.12.10/8.12.10/Submit) id i1FMPaVE056541; Sun, 15 Feb 2004 14:25:36 -0800 (PST) (envelope-from nobody) Message-Id: <200402152225.i1FMPaVE056541@www.freebsd.org> Date: Sun, 15 Feb 2004 14:25:36 -0800 (PST) From: Stephan Uphoff To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-2.0 Subject: kern/62890: proc pointer set by fork1 can be stale in fork,rfork,vfork X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Feb 2004 22:30:23 -0000 >Number: 62890 >Category: kern >Synopsis: proc pointer set by fork1 can be stale in fork,rfork,vfork >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Feb 15 14:30:22 PST 2004 >Closed-Date: >Last-Modified: >Originator: Stephan Uphoff >Release: current 15 Feb 2004 >Organization: >Environment: N/A >Description: fork(),rfork(),vfork() call fork1() to create a child process and to obtain a pointer to the new proc structure. They then use the pointer to the proc structure to obtain the child's pid. However if the parent process is not interested in waiting for the child then the child process might already be dead and its proc structure recycled by the time fork(),rfork(),vfork() try to obtain the pid. >How-To-Repeat: >Fix: Add pidp parameter to fork1() and use it. >Release-Note: >Audit-Trail: >Unformatted: