From owner-cvs-all Thu Feb 28 7: 0: 8 2002 Delivered-To: cvs-all@freebsd.org Received: from mail12.speakeasy.net (mail12.speakeasy.net [216.254.0.212]) by hub.freebsd.org (Postfix) with ESMTP id 0B93E37B425 for ; Thu, 28 Feb 2002 06:59:32 -0800 (PST) Received: (qmail 15861 invoked from network); 28 Feb 2002 14:58:04 -0000 Received: from unknown (HELO server.baldwin.cx) ([65.91.152.52]) (envelope-sender ) by mail12.speakeasy.net (qmail-ldap-1.03) with DES-CBC3-SHA encrypted SMTP for ; 28 Feb 2002 14:58:04 -0000 Received: from laptop.baldwin.cx (john@laptop.baldwin.cx [192.168.0.4]) by server.baldwin.cx (8.11.6/8.11.6) with ESMTP id g1SEvtG40898; Thu, 28 Feb 2002 09:57:55 -0500 (EST) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.4.0 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <200202270735.g1R7ZxR71022@freefall.freebsd.org> Date: Thu, 28 Feb 2002 09:57:49 -0500 (EST) From: John Baldwin To: Alfred Perlstein Subject: RE: cvs commit: src/sys/kern sys_pipe.c src/sys/sys pipe.h Cc: cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org 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 On 27-Feb-02 Alfred Perlstein wrote: > alfred 2002/02/26 23:35:59 PST > > Modified files: > sys/kern sys_pipe.c > sys/sys pipe.h > Log: > First rev at making pipe(2) pipe's MPsafe. > > Both ends of the pipe share a pool_mutex, this makes allocation > and deadlock avoidance easy. > > Remove some un-needed FILE_LOCK ops while I'm here. > > There are some issues wrt to select and the f{s,g}etown code that > we'll have to deal with, I think we may also need to move the calls > to vfs_timestamp outside of the sections covered by PIPE_LOCK. Looks good, but I have the following questions: - Why isn't the pipe lock dropped around pipe_destroy_write_buffer() in pipe_clone_write_buffer() and the second call in pipe_direct_write() like it is in the first call in pipe_direct_write(). - Does pipe_stat() need a lock for any of the fields it reads? - Can you document some locking notes for struct pipe in pipe.h similar to proc.h? -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message