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 11:33:28 +0200 [thread overview]
Message-ID: <20060422093328.GM19754@stusta.de> (raw)
In-Reply-To: <1145672241.16166.156.camel@shinybook.infradead.org>
On Sat, Apr 22, 2006 at 03:17:20AM +0100, David Woodhouse wrote:
>...
> Implementation details aside, the point is that we can now work on
> refining the choice of headers to be exported, and more importantly we
> can start fixing the _contents_ of those headers so that nothing which
> should be private is exported in them outside #ifdef __KERNEL__.
>
> I've chosen headers in the generic directories and in asm-powerpc; the
> other asm directories could do with a proper selection being made; the
> rest of the current list is just inherited from Fedora's
> glibc-kernheaders package for now.
>
> For a start, the headers I've marked for export are sometimes including
> headers which _weren't_ so marked, and hence which don't exist in our
> exported set of headers. I've started to move those inclusions into
> #ifdef __KERNEL__ where appropriate, but there's more of that to do
> before we can even use these for building anything and actually start to
> test them in earnest.
>
> Adrian, I'm hoping we can persuade you to help us audit the resulting
> contents of usr/include/* and apply your usual treatment to the headers
> until it looks sane. That assistance would be very much appreciated.
My thirst thought is:
Is this really the best approach, or could this be done better?
I'm currently more a fan of a separate kabi/ subdir with headers used by
both headers under linux/ and userspace.
Why?
Unless I'm misunderstanding this, your changes are giving a result
identical result to simply using the current kernel headers (stripping
the #ifdef __KERNEL__ stuff doesn't change anything).
If we want to define an ABI and do it right, the resulting ABI headers
should be write-only, and should even continue to contain the ABI for
code already removed from the kernel.
It should be possible to do this incrementically:
- without breaking the kernel at any time
- with no userspace breakages when switching to the ABI headers for
userspace (there might be corner cases, and if e.g. the asm-i386/atomic.h
abuse by MySQL breaks that's not a loss)
This might take a bit longer, but as a result we have:
- an ABI where diffstat is able to tell us if someone has touched the ABI
(can git trigger electric shocks for everyone trying to commit or pull
changes to the kabi/ subdir? ;-) )
- as a side effect, some cleanup of the current kernel headers
Unless someone can tell me a reason why this wouldn't work (except for
being a bit more work than your approach), this is the approach I have
in mind for working on.
> 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
next prev parent reply other threads:[~2006-04-22 17:27 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 [this message]
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
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=20060422093328.GM19754@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