From owner-freebsd-current@FreeBSD.ORG Tue Mar 30 08:25:02 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D6A2A16A4CE; Tue, 30 Mar 2004 08:25:02 -0800 (PST) Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4]) by mx1.FreeBSD.org (Postfix) with ESMTP id 92E7C43D2D; Tue, 30 Mar 2004 08:25:02 -0800 (PST) (envelope-from eischen@vigrid.com) Received: from mail.pcnet.com (mail.pcnet.com [204.213.232.4]) by mail.pcnet.com (8.12.10/8.12.1) with ESMTP id i2UGP1tf015238; Tue, 30 Mar 2004 11:25:01 -0500 (EST) Date: Tue, 30 Mar 2004 11:25:01 -0500 (EST) From: Daniel Eischen X-Sender: eischen@pcnet5.pcnet.com To: "Jacques A. Vidrine" In-Reply-To: <20040330141631.GH10949@lum.celabo.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-current@FreeBSD.org cc: Sean McNeil Subject: Re: nss_ldap broken X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Mar 2004 16:25:03 -0000 On Tue, 30 Mar 2004, Jacques A. Vidrine wrote: > On Tue, Mar 30, 2004 at 01:37:44AM -0800, Sean McNeil wrote: > > On Mon, 2004-03-29 at 19:02, Jacques A. Vidrine wrote: > > > Thanks! So, could you try the patch below? I think it is now > > > basically identical with what you posted, except for the changes to > > > nss_compat.c. > > > > After making a bone-head mistake and just installing the libc after a > > make update (duh!) I finally managed to salvage my system and give the > > patch a go. Things look good. > > Thanks! I'll commit it. > > > I'm still concerned that nss_atexit can cause a seg11 if a nss_*.so.1 > > starts up any threads when the program isn't threaded otherwise. Don't > > really know why an nss plugin would want to do that, but it is > > hazardous. It shouldn't be doing that. > > The locks may not be needed regardless. Dan, how do threads interact > with atexit()? Are threads serialized at that point? Does the main > thread call all the atexit handlers? exit() calls the finalization of atexit() to run down the exit handlers. The threads library has nothing to do with it, but the atexit() stuff is protected with mutexes (see src/lib/libc/stdlib/atexit.c). -- Dan Eischen