From owner-cvs-all Mon May 6 12:31:36 2002 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 1C11537B407; Mon, 6 May 2002 12:31:29 -0700 (PDT) Received: (from alfred@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g46JVTG09139; Mon, 6 May 2002 12:31:29 -0700 (PDT) (envelope-from alfred) Message-Id: <200205061931.g46JVTG09139@freefall.freebsd.org> From: Alfred Perlstein Date: Mon, 6 May 2002 12:31:29 -0700 (PDT) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/drm drm_drv.h src/sys/kern kern_descrip.c kern_exit.c kern_proc.c subr_log.c subr_witness.c sys_pipe.c tty.c uipc_socket.c src/sys/net bpf.c if_tap.c if_tun.c src/sys/sys filedesc.h X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG alfred 2002/05/06 12:31:29 PDT Modified files: sys/dev/drm drm_drv.h sys/kern kern_descrip.c kern_exit.c kern_proc.c subr_log.c subr_witness.c sys_pipe.c tty.c uipc_socket.c sys/net bpf.c if_tap.c if_tun.c sys/sys filedesc.h Log: Make funsetown() take a 'struct sigio **' so that the locking can be done internally. Ensure that no one can fsetown() to a dying process/pgrp. We need to check the process for P_WEXIT to see if it's exiting. Process groups are already safe because there is no such thing as a pgrp zombie, therefore the proctree lock completely protects the pgrp from having sigio structures associated with it after it runs funsetownlst. Add sigio lock to witness list under proctree and allproc, but over proc and pgrp. Seigo Tanimura helped with this. Revision Changes Path 1.4 +1 -1 src/sys/dev/drm/drm_drv.h 1.145 +45 -26 src/sys/kern/kern_descrip.c 1.164 +0 -4 src/sys/kern/kern_exit.c 1.134 +1 -4 src/sys/kern/kern_proc.c 1.48 +1 -1 src/sys/kern/subr_log.c 1.114 +1 -0 src/sys/kern/subr_witness.c 1.106 +1 -1 src/sys/kern/sys_pipe.c 1.174 +1 -1 src/sys/kern/tty.c 1.118 +1 -1 src/sys/kern/uipc_socket.c 1.92 +1 -1 src/sys/net/bpf.c 1.19 +1 -1 src/sys/net/if_tap.c 1.106 +1 -1 src/sys/net/if_tun.c 1.44 +1 -1 src/sys/sys/filedesc.h To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message