From owner-freebsd-current Sat Feb 23 1:44:36 2002 Delivered-To: freebsd-current@freebsd.org Received: from k6.locore.ca (k6.locore.ca [198.96.117.170]) by hub.freebsd.org (Postfix) with ESMTP id AA1E337B400; Sat, 23 Feb 2002 01:44:33 -0800 (PST) Received: (from jake@localhost) by k6.locore.ca (8.11.6/8.11.6) id g1N9j4R34410; Sat, 23 Feb 2002 04:45:04 -0500 (EST) (envelope-from jake) Date: Sat, 23 Feb 2002 04:45:03 -0500 From: Jake Burkholder To: John Baldwin Cc: dillon@FreeBSD.ORG, current@FreeBSD.ORG Subject: Re: First (easy) td_ucred patch Message-ID: <20020223044503.C27577@locore.ca> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from jhb@FreeBSD.ORG on Fri, Feb 22, 2002 at 11:38:07PM -0500 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG Apparently, On Fri, Feb 22, 2002 at 11:38:07PM -0500, John Baldwin said words to the effect of; > I'm currently testing the following patch whcih is a subset of the td_ucred > changes. It involves no API changes, but only contains 2 basic changes: > > 1) We still need Giant when doing the crhold() to set td_ucred in > cred_update_thread(). This is an old bug that is my fault. I knew that > PROC_LOCK was sufficient yet which was my reason for not using td_ucred. > However, we could still be derferencing a stale p_ucred and doing very bad > things, so this needs to be fixed until p_ucred is fully protected by the > PROC_LOCK. This also means that td_ucred is now safe to use. As such: > > 2) All the "easy" p->p_ucred -> td->td_ucred changes that don't involve the > changes to API's such as suser() and p_canfoo(). The next patch in this > series will most likely be the suser() API change. > > http://www.FreeBSD.org/~jhb/patches/ucred.patch The UGAR changes in sysv_sem.c to not leak Giant are most unreleated and should probably be committed separately. I wonder who introduced the leaks in the first place. Other than that I don't see anything wrong with this. Commit it. Jake To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message