public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "H. Peter Anvin" <hpa@zytor.com>
To: linux-kernel@vger.kernel.org
Subject: Re: [RFC/PATCH 1/2] in-kernel sockets API
Date: Tue, 13 Jun 2006 17:07:40 -0700 (PDT)	[thread overview]
Message-ID: <e6nk0c$8el$1@terminus.zytor.com> (raw)
In-Reply-To: Pine.LNX.4.64.0606131655580.4856@turbotaz.ourhouse

Followup to:  <Pine.LNX.4.64.0606131655580.4856@turbotaz.ourhouse>
By author:    Chase Venters <chase.venters@clientec.com>
In newsgroup: linux.dev.kernel
> >
> > Why not?  Not all non-GPL modules are proprietary.  Do we lose
> > something by making a nice stable api available to non-derived
> > modules?
> 
> Look out for that word (stable). Judging from history (and sanity), 
> arguing /in favor of/ any kind of stable module API is asking for it.
> 
> At least some of us feel like stable module APIs should be explicitly 
> discouraged, because we don't want to offer comfort for code 
> that refuses to live in the tree (since getting said code into the tree is 
> often a goal).
> 

The much bigger problem is that there is a substantial cost to
maintaining a stable API.  The VFS in Linux, for example, was
relatively stable from long before the 1.0 days until the 2.0 series.
However, in 2.1 there was a radical change -- the dcache -- which
broke every filesystem driver in fundamental ways.  This was followed
by quite a bit of instability as all the various filesystems adapted,
and sometimes fed back requirements to the original code.

This type of iterative programming is by definition forbidden if the
API is to be stable, and is substantially harder if it has to be done
in a coordinated fashion.  It took long enough as it is.

Stable *ABIs* are even worse, and are hard even for userspace to deal
with, and generally involve adding costly conversion layers.

So it is all a matter about what you expect from a "stable" API.

	-hpa

  parent reply	other threads:[~2006-06-14  0:07 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-12 23:56 [RFC/PATCH 1/2] in-kernel sockets API Sridhar Samudrala
2006-06-13  5:07 ` Stephen Hemminger
2006-06-13 11:13   ` Arnaldo Carvalho de Melo
2006-06-13 11:22   ` Brian F. G. Bidulock
2006-06-13 21:12     ` Daniel Phillips
2006-06-13 21:40       ` Brian F. G. Bidulock
2006-06-13 22:00         ` Chase Venters
2006-06-13 22:30           ` Daniel Phillips
2006-06-13 22:47             ` Brian F. G. Bidulock
2006-06-13 23:59               ` H. Peter Anvin
2006-06-13 23:59               ` Chase Venters
2006-06-14  0:31                 ` Brian F. G. Bidulock
2006-06-14  0:53                   ` Chase Venters
2006-06-14  6:07                     ` Brian F. G. Bidulock
2006-06-14  7:58                       ` Chase Venters
2006-06-14  9:28                         ` Brian F. G. Bidulock
2006-06-14 10:43                       ` Alan Cox
2006-06-14 10:54                         ` Brian F. G. Bidulock
2006-06-14 10:36                     ` Theodore Tso
2006-06-14  6:28             ` David Schwartz
2006-06-13 22:44           ` Brian F. G. Bidulock
2006-06-13 23:42           ` Ben Greear
2006-06-14  0:05             ` Chase Venters
2006-06-14  0:18               ` Brian F. G. Bidulock
2006-06-14  0:29                 ` Chase Venters
2006-06-14  0:36                   ` Brian F. G. Bidulock
2006-06-14  0:19               ` Ben Greear
2006-06-14  0:38                 ` Brian F. G. Bidulock
2006-06-14  0:07           ` H. Peter Anvin [this message]
2006-06-14  4:54           ` Brice Goglin
2006-06-14  5:03             ` Dave Jones
2006-06-14  5:28             ` Chris Friesen
2006-06-14 13:30       ` Harald Welte
2006-06-14 14:29         ` Erik Mouw
2006-06-14 15:26           ` Harald Welte
2006-06-14 17:48         ` Daniel Phillips
2006-06-14 18:03           ` Brian F. G. Bidulock
2006-06-14 20:52           ` Sridhar Samudrala
2006-06-13 14:58 ` Jan Engelhardt
2006-06-13 16:27   ` Sridhar Samudrala

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='e6nk0c$8el$1@terminus.zytor.com' \
    --to=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox