public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Adrian Bunk <bunk@stusta.de>
To: David Woodhouse <dwmw2@infradead.org>
Cc: linux-kernel@vger.kernel.org, sam@ravnborg.org
Subject: Re: [PATCH] 'make headers_install' kbuild target.
Date: Sat, 22 Apr 2006 15:20:32 +0200	[thread overview]
Message-ID: <20060422132032.GB5010@stusta.de> (raw)
In-Reply-To: <1145710123.11909.241.camel@pmac.infradead.org>

On Sat, Apr 22, 2006 at 01:48:43PM +0100, David Woodhouse wrote:
> On Sat, 2006-04-22 at 14:38 +0200, Adrian Bunk wrote:
> > What was the recommended way for getting userspace header at last
> > year's kernel summit?
> 
> It was said that we need _incremental_ changes, and this is an attempt
> to satisfy that request.
> 
> > > The important thing is that we all get our editors out and clean up the
> > > _contents_ our own headers, and actually start to _think_ about the
> > > visibility of any new header-file content we introduce. Let's not
> > > concentrate too much on the implementation details of how we actually
> > > get those to userspace.
> > 
> > Currently, it's said the kernel headers aren't suitable for userspace.
> 
> Indeed they aren't.
> 
> > After the cleanups you propose, the kernel headers will be suitable for 
> > userspace (the copy steps you propose are not required, distributions 
> > could equally start to copy the verbatim headers again).
> 
> After the _first_ stage of the cleanups I propose, the export step will
> still be necessary. You'll need to pick those headers which are intended
> to be user-visible, and leave behind those which are not. 
> 
> If we actually go on to abolish __KERNEL__ and move the public headers
> to a separate directory, you're right -- as I said, one day hopefully
> it'll just be 'cp -a'. But that is not the _first_ stage. We need to do
> this incrementally.
>...

Why can't the splitting happen incrementally?

Assume you have a header include/linux/foo.h:
- Add an #include <kabi/linux/foo.h> at the top.
- Move the part of the contents that is part of the userspace ABI to 
  include/kabi/linux/foo.h.

When this is done for all headers containing parts of the userspace ABI:
- test the kabi/ headers in userspace
- review all headers under kabi/ since what's there will become a fixed
  ABI that can never be changed
- test the kabi/ headers in userspace
- make the ABI headers official

For kernel code, this header splitting should be completely transparent
(and nothing outside include/ should directly include headers under 
include/kabi/).

For userspace, this will be one switch from the many different header 
packages floating around to the new ABI headers, but it should break 
nearly none usespace applications (it will break some abuses, but
that's OK).

> dwmw2

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed


  reply	other threads:[~2006-04-22 19:54 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-22  2:17 [PATCH] 'make headers_install' kbuild target David Woodhouse
2006-04-22  9:33 ` Adrian Bunk
2006-04-22 12:03   ` David Woodhouse
2006-04-22 12:38     ` Adrian Bunk
2006-04-22 12:48       ` David Woodhouse
2006-04-22 13:20         ` Adrian Bunk [this message]
2006-04-22 13:36           ` David Woodhouse
2006-04-22 14:11             ` Adrian Bunk
2006-04-22 14:26               ` David Woodhouse
2006-04-22 14:44                 ` Adrian Bunk
2006-04-22 14:56                   ` David Woodhouse
2006-04-22 15:30           ` David Woodhouse
2006-04-22 21:13             ` Arnd Bergmann
2006-04-23  7:09               ` Arjan van de Ven
2006-04-23 16:51                 ` Arnd Bergmann
2006-04-23 17:00                 ` Joshua Hudson
2006-04-22 14:14     ` Sam Ravnborg
2006-04-22 14:20       ` Adrian Bunk
2006-04-22 14:28         ` Sam Ravnborg
2006-04-22 14:47           ` David Woodhouse
2006-04-22 14:50           ` Adrian Bunk
2006-04-28 18:15             ` Rob Landley
2006-04-28 18:27               ` David Woodhouse
2006-04-28 19:59                 ` Rob Landley
2006-04-22 14:35         ` David Woodhouse
2006-04-23 20:47 ` David Woodhouse
2006-04-24  0:12 ` David Woodhouse
2006-04-28 18:13 ` Rob Landley
2006-04-28 18:22   ` David Woodhouse

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=20060422132032.GB5010@stusta.de \
    --to=bunk@stusta.de \
    --cc=dwmw2@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sam@ravnborg.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