Re: Simple header cleanups

From: Adrian Bunk
Date: Thu Apr 27 2006 - 17:37:44 EST


On Wed, Apr 26, 2006 at 08:31:00PM -0700, Linus Torvalds wrote:
>
> On Thu, 27 Apr 2006, David Woodhouse wrote:
> >
> > Agreed. And distributions and library maintainers _will_ fix them. Are
> > we to deny those people the tools which will help them to keep track of
> > our breakage and submit patches to fix it?
>
> No. As mentioned, as long as the target audience is distributions and
> library maintainers, I definitely think we should do help them as much as
> possible. Our problems have historically been "random people" who have
> /usr/include/linux being the symlink to "kernel source of the day", which
> is an unsupportable situation.
>...


A definition of the kernel <-> userspace ABI is required.

Currently, each distribution does it slightly different.

Currently we might accidentially touch the userspace ABI of the kernel
without even noticing it.


I'd like to do the following:

Create an include/kabi/linux/ with the following properties:
- the goal is that include/kabi/linux an be copied verbatim to
/usr/include/ (by distributions and library maintainers, normal users
should use the copy installed by their distribution in /usr/include/)
- kernel code outside include/ wouldn't notice, since for each ABI
header include/kabi/linux/foo.h there's a header include/linux/foo.h
that does #include <kabi/linux/foo.h>
- moving stuff to kabi/linux can happen incrementially
- once the move is complete, we can announce this as the official ABI
headers
- moving to the kabi/ headers shouldn't cause compile time or
runtime breakages for userspace software [1]


I'd be willing to work on this, but if you have any problems with this
approach, I'd like to understand them


> Linus


cu
Adrian

[1] with the exception of header abuses like the MySQL asm/atomic.h usage

--

"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

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/