From owner-cvs-src@FreeBSD.ORG Fri Aug 24 20:38:19 2007 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5F07516A46D; Fri, 24 Aug 2007 20:38:19 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from speedfactory.net (mail6.speedfactory.net [66.23.216.219]) by mx1.freebsd.org (Postfix) with ESMTP id E25EA13C46A; Fri, 24 Aug 2007 20:38:18 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (unverified [66.23.211.162]) by speedfactory.net (SurgeMail 3.8k) with ESMTP id 205121697-1834499 for multiple; Fri, 24 Aug 2007 16:37:27 -0400 Received: from localhost.corp.yahoo.com (john@localhost [127.0.0.1]) (authenticated bits=0) by server.baldwin.cx (8.13.8/8.13.8) with ESMTP id l7OKbFWA031698; Fri, 24 Aug 2007 16:37:16 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: Yar Tikhiy Date: Fri, 24 Aug 2007 16:35:34 -0400 User-Agent: KMail/1.9.6 References: <200708230509.l7N59VCi048341@repoman.freebsd.org> <20070824183630.GA99474@comp.chem.msu.su> In-Reply-To: <20070824183630.GA99474@comp.chem.msu.su> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200708241635.36266.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [127.0.0.1]); Fri, 24 Aug 2007 16:37:16 -0400 (EDT) X-Virus-Scanned: ClamAV 0.88.3/4054/Fri Aug 24 12:55:59 2007 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-4.4 required=4.2 tests=ALL_TRUSTED,AWL,BAYES_00 autolearn=ham version=3.1.3 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on server.baldwin.cx Cc: Daniel Eischen , cvs-src@freebsd.org, src-committers@freebsd.org, cvs-all@freebsd.org Subject: Re: cvs commit: src/lib/libc/gen fts-compat.c fts-compat.h X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Aug 2007 20:38:19 -0000 On Friday 24 August 2007 02:36:30 pm Yar Tikhiy wrote: > On Fri, Aug 24, 2007 at 11:03:12AM -0400, Daniel Eischen wrote: > > On Thu, 23 Aug 2007, Yar Tikhiy wrote: > > > > >yar 2007-08-23 05:09:31 UTC > > > > > > FreeBSD src repository > > > > > > Modified files: > > > lib/libc/gen fts-compat.c fts-compat.h > > > Log: > > > Forced commit to note repo-copy: > > > > > > These files have been repo-copied from src/include/fts.h > > > and src/lib/libc/gen/fts.c to serve as a base for 4.4BSD > > > compatible versions of fts(3) functions to be preserved > > > through libc symbol versioning while the default versions > > > undergo ABI-breaking extension to support big file trees. > > > > When are you going to break the ABI? After 7.0 is tagged > > and released? If you break the ABI before, you don't need > > or want to have the compat versions; the libraries have already > > been bumped in prep for release. I don't think we want to > > use symbol versioning as a crutch for -current users; the > > version definitions are meant for public releases only. > > The reason for exercising symbol versions right now is that "make > installworld" is sensitive to the fts(3) ABI. If the ABI is just > broken w/o special measures, "make installworld" will fail in the > middle and leave you with a botched system. It goes as follows: > > - "make installworld" copies the old /usr/bin/find and some other > tools to /tmp/install.xxx for use during the install > - libc is overwritten by its new instance, with new fts(3) ABI > - the old find(1) is run by installworld and dumps core immediately. > > Earlier the problem was to be avoided by bumping libc version so > that the old libc is kept, and now I chose symbol versioning to get > around it. Do you think there is a different way? 6.x users upgrading to 7.0 will have a 6.x /usr/bin/find, so they will be ok. It's only old -current users who already have a libc.so.7 that will be inconvenienced, and that's part of running -current. Maybe you could use a hack where for 7.x osreldate's you copy tools out of /rescue instead for a few weeks to give people on -current a chance to upgrade. -- John Baldwin