From owner-cvs-all@FreeBSD.ORG Fri Aug 24 21:09:55 2007 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A285B16A418; Fri, 24 Aug 2007 21:09:55 +0000 (UTC) (envelope-from cokane@freebsd.org) Received: from alnrmhc15.comcast.net (alnrmhc15.comcast.net [204.127.225.95]) by mx1.freebsd.org (Postfix) with ESMTP id 474D713C442; Fri, 24 Aug 2007 21:09:55 +0000 (UTC) (envelope-from cokane@freebsd.org) Received: from discordia (c-75-69-212-227.hsd1.nh.comcast.net[75.69.212.227]) by comcast.net (alnrmhc15) with ESMTP id <20070824205720b1500a3p95e>; Fri, 24 Aug 2007 20:57:20 +0000 Received: by discordia (Postfix, from userid 103) id 204E835A578; Fri, 24 Aug 2007 16:57:20 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 3.1.8-gr1 (2007-02-13) on discordia X-Spam-Level: X-Spam-Status: No, score=-4.4 required=5.0 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.1.8-gr1 Received: from [172.20.1.3] (erwin.int.cokane.org [172.20.1.3]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by discordia (Postfix) with ESMTP id 3182735A577; Fri, 24 Aug 2007 16:57:09 -0400 (EDT) Message-ID: <46CF45F8.9060405@FreeBSD.org> Date: Fri, 24 Aug 2007 16:56:24 -0400 From: Coleman Kane Organization: The FreeBSD Project User-Agent: Thunderbird 2.0.0.6 (X11/20070813) MIME-Version: 1.0 To: John Baldwin References: <200708230509.l7N59VCi048341@repoman.freebsd.org> <20070824183630.GA99474@comp.chem.msu.su> <200708241635.36266.jhb@freebsd.org> In-Reply-To: <200708241635.36266.jhb@freebsd.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Daniel Eischen , Yar Tikhiy , src-committers@freebsd.org, cvs-all@freebsd.org, cvs-src@freebsd.org Subject: Re: cvs commit: src/lib/libc/gen fts-compat.c fts-compat.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: cokane@FreeBSD.org List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Aug 2007 21:09:55 -0000 John Baldwin wrote: > 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. > Whatever the solution turns out to be, don't forget to drop it into UPGRADING... -- Coleman Kane