From owner-freebsd-hackers@FreeBSD.ORG Thu Feb 9 07:35:25 2012 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 016B5106566B for ; Thu, 9 Feb 2012 07:35:25 +0000 (UTC) (envelope-from mdf356@gmail.com) Received: from mail-pw0-f54.google.com (mail-pw0-f54.google.com [209.85.160.54]) by mx1.freebsd.org (Postfix) with ESMTP id C7AFD8FC08 for ; Thu, 9 Feb 2012 07:35:24 +0000 (UTC) Received: by pbcxa7 with SMTP id xa7so252432pbc.13 for ; Wed, 08 Feb 2012 23:35:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=Kw6SYitbuoORSD9K1u+Iicalq1EzT5nIt5e39Mwh+q0=; b=PD43x3TPcx03zhvVexI9ro+YFVWpkn4MomXyQ23hTtzt2xX6o4rt1xtB39pCe4ldDe PbGgikKAAurQTaMo+yPlbkWJHw/ibphMzAWQA+TxZjrxhHd2Nw52zYmnWz7Li7S75Map +BnGWYDq+YREZg1ooog2c4HeL4MIIwgvdpHjk= MIME-Version: 1.0 Received: by 10.68.74.134 with SMTP id t6mr3136188pbv.26.1328771360423; Wed, 08 Feb 2012 23:09:20 -0800 (PST) Sender: mdf356@gmail.com Received: by 10.68.131.9 with HTTP; Wed, 8 Feb 2012 23:09:20 -0800 (PST) In-Reply-To: References: <20120119005658.218280@gmx.com> <4F19188A.4090907@herveybayaustralia.com.au> <4F213CEB.4020207@herveybayaustralia.com.au> Date: Wed, 8 Feb 2012 23:09:20 -0800 X-Google-Sender-Auth: vCyfmAzH3tvIA7k05QxQZg0-5P4 Message-ID: From: mdf@FreeBSD.org To: John Kozubik Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: freebsd-hackers@freebsd.org Subject: Re: Moving on ... (was: Re: FreeBSD has serious problems with...) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Feb 2012 07:35:25 -0000 On Wed, Feb 8, 2012 at 10:33 PM, John Kozubik wrote: > If it were up to me, I think I would stake out a very loud and clear miss= ion > statement for FreeBSD that explicitly sacrifices new features for longer > lifecycles and deeper investment in particular releases. =A0I've thought > seriously about the points that were made in this thread supporting faste= r > releases, and I do appreciate what we would be giving up, but I continue = to > advocate for a new major release every 5 years. To summarize 7 years of working on AIX, where we upgrade the major version number every 5 years or so, in the interim we do deliver hundreds of other features. However, if we made a poor choice for interface, we're stuck with it. This leads to two things: (1) flexible interfaces, like leaving an unused flags field in a syscall so it can become variadic later, and (2) flexible structures, like leaving a few bytes in a struct that's part of the KBI so they can be filled in, and when that space is nearly out, malloc(9) more storage to hang off the struct. Sometimes this means a lot of extra testing effort to ensure the legacy interface works as well as any extensions that arise later. It's not ideal, it's more work when designing and testing, and when a major release does come around where we could break binary compatibility, we've often forgotten about a lot of these little bits and just leave things the way they are. With a more frequent release cycle FreeBSD can be more free about breaking KBI and ABI, and even the [AK]PI, which keeps the current code clean but makes upgrading more difficult. It's a hassle. It's doable, but it adds work, and that's a tough call to make for a volunteer effort. Increasing the barrier to entry, or reducing the "fun" part of working on FreeBSD doesn't serve the project either. Just my 2 cents, a month late. Cheers, matthew