Re: Using kernel headers that are not for the running kernel

From: Rob Landley
Date: Sun Jun 20 2004 - 19:41:41 EST


On Sunday 20 June 2004 11:24, Jeff Garzik wrote:

> Kernel-internal headers and definitions should absolutely never be used
> in userspace.

Hence the old #ifdef KERNEL stuff, or whatever the guard was...

My only confusion was that when the #ifdefs stopped being maintained (written
off as inherently unworkable because people just #defined KERNEL when they
shouldn't), no actual replacement was pursued. Instead the attitude seemed
to be "this is glibc's problem", we're too busy trying to get 2.6 out to
actually worry about anybody using it. And calling it glibc's problem
doesn't work for me, because want to use uclibc...

> H. Peter Anvin has suggested an include/abi which could be shared, and
> this seem quite reasonable to me. However, the monumental task of
> separating kernel-internal definitions from ABI definitions still
> remains.
>
> Jeff, really glad the linux-libc-headers guys started his effort

Mazur seems to be doing a really nice job of it so far. I'm building a small
distro based on it and sending him bug reports when I can't get something to
compile. I'm happy to use his work, but I'd rather it got integrated into
the kernel.

Now that it's mostly stabilized, it seems that the remaining work is mostly
auditing, integrating it in under the include/abi directory, and cleaning up
the normal kernel headers to include the abi stuff rather than defining their
own copies in the kernel internal headers.

If an abi directory was created, I'd be happy to submit a file or two at a
time into it (with the corresponding patches to remove the definitions from
the main include directory and #include abi/whatever instead...)

(Is there some effort _other_ than Mazur's work I should know about? Or
something wrong with Mazur's cleanups? Or somebody already doing this...?)

Rob
--
www.linucon.org: Linux Expo and Science Fiction Convention
October 8-10, 2004 in Austin Texas. (I'm the con chair.)

-
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/