From owner-cvs-all Sat Feb 23 12:30: 9 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 1F48B37B402; Sat, 23 Feb 2002 12:30:04 -0800 (PST) Received: (from dillon@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g1NKU4m87533; Sat, 23 Feb 2002 12:30:04 -0800 (PST) (envelope-from dillon) Date: Sat, 23 Feb 2002 12:30:04 -0800 (PST) From: Message-Id: <200202232030.g1NKU4m87533@freefall.freebsd.org> To: Seigo Tanimura Cc: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/coda coda_venus.c src/sys/compat/linprocfs 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 : New locks are: : : - pgrpsess_lock which locks the whole pgrps and sessions, : - pg_mtx which protects the pgrp members, and : - s_mtx which protects the session members. :... I see you are using mtx_lock_giant(). Thanks! That is precisely the use it is designed for! -- Seigo, it looks like s_mtx can be turned into a pool mutex. Do you mind if I make this change? - I would also like to document some of the routines. For example, funsetownlst() has some rather complex locking requirements which are not documented at all at the base of the routine. It would also probably be a good idea for the two callers of this routine to assert the sign of sio_pgid before calling funsetownlst(). pgfind() is also only partially documented. And so forth. I also noticed that you are leaving PGRPSESS_SLOCK()'d while calling ktrsetchildren() and ktrops(). This is the only place where PGRPSESS_SLOCK() is used outside of its domain and if it is at all possible to remove it I would remove it. If that isn't possible, then both ktr*() routines *AND* VREF() and vrele() need to be documented in regards to the process group session potentially being locked on call (which I would be happy to do as well). -Matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message