From owner-cvs-src@FreeBSD.ORG  Sat Jan 20 14:59:03 2007
Return-Path: <owner-cvs-src@FreeBSD.ORG>
X-Original-To: cvs-src@FreeBSD.org
Delivered-To: cvs-src@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
	by hub.freebsd.org (Postfix) with ESMTP id 3550416A400;
	Sat, 20 Jan 2007 14:59:03 +0000 (UTC)
	(envelope-from netchild@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41])
	by mx1.freebsd.org (Postfix) with ESMTP id 2526413C44B;
	Sat, 20 Jan 2007 14:59:03 +0000 (UTC)
	(envelope-from netchild@FreeBSD.org)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
	by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id l0KEx0nE029300;
	Sat, 20 Jan 2007 14:59:00 GMT
	(envelope-from netchild@repoman.freebsd.org)
Received: (from netchild@localhost)
	by repoman.freebsd.org (8.13.6/8.13.4/Submit) id l0KEx06Z029299;
	Sat, 20 Jan 2007 14:59:00 GMT (envelope-from netchild)
Message-Id: <200701201459.l0KEx06Z029299@repoman.freebsd.org>
From: Alexander Leidinger <netchild@FreeBSD.org>
Date: Sat, 20 Jan 2007 14:59:00 +0000 (UTC)
To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
X-FreeBSD-CVS-Branch: HEAD
Cc: 
Subject: cvs commit: src/sys/amd64/linux32 linux32_machdep.c
 src/sys/compat/linux linux_emul.c src/sys/i386/linux linux_machdep.c
X-BeenThere: cvs-src@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: CVS commit messages for the src tree <cvs-src.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/cvs-src>,
	<mailto:cvs-src-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/cvs-src>
List-Post: <mailto:cvs-src@freebsd.org>
List-Help: <mailto:cvs-src-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/cvs-src>,
	<mailto:cvs-src-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 20 Jan 2007 14:59:03 -0000

netchild    2007-01-20 14:59:00 UTC

  FreeBSD src repository

  Modified files:
    sys/amd64/linux32    linux32_machdep.c 
    sys/compat/linux     linux_emul.c 
    sys/i386/linux       linux_machdep.c 
  Log:
  MFp4 (113077, 113083, 113103, 113124, 113097):
  
          Dont expose em->shared to the outside world before its properly
          initialized. Might not affect anything but its at least a better
          coding style.
  
          Dont expose em via p->p_emuldata until its properly initialized.
          This also enables us to get rid of some locking and simplify the
          code because we are workin on a local copy.
  
          In linux_fork and linux_vfork create the process in stopped state
          to be sure that the new process runs with fully initialized emuldata
          structure [1]. Also fix the vfork (both in linux_clone and linux_vfork)
          race that could result in never woken up process [2].
  
  Reported by:    Scot Hetzel     [1]
  Suggested by:   jhb             [2]
  Reviewed by:    jhb (at least some important parts)
  Submitted by:   rdivacky
  Tested by:      Scot Hetzel (on amd64)
  
  Change 2 comments (in the new code) to comply to style(9).
  
  Suggested by:   jhb
  
  Revision  Changes    Path
  1.27      +37 -4     src/sys/amd64/linux32/linux32_machdep.c
  1.13      +5 -8      src/sys/compat/linux/linux_emul.c
  1.67      +41 -5     src/sys/i386/linux/linux_machdep.c