Re: linux-nfs-0.4.21 for Alpha glibc

Philip Blundell (Philip.Blundell@pobox.com)
Thu, 01 Jan 1998 00:28:16 +0000


> Date: Sat, 27 Dec 1997 22:58:30 +0000
> From: Philip Blundell <Philip.Blundell@pobox.com>
>
> The rule of thumb when writing code for glibc is to avoid including
> any kernel headers - if you need definitions that are only found in
> the kernel headers then you should duplicate them in your own code
>
>In the long run I think we will need to clean up the kernel headers,

Indeed. One of the reasons for separating them now is that it gives Linus a
free rein to do whatever cleanups he wants in kernel space without breaking
user-space applications.

Once they _have_ been cleaned up (which isn't going to happen in the short
term, by which I mean Linux 2.2/glibc 2.1) we can go back to using them from
userspace. However, this still won't mean that including <linux/*> headers is
acceptable for a user program in the general case; that's something that
should be restricted only to the very few cases where it's actually necessary.

In general user programs should still go via the appropriate libc header,
which may well just be a wrapper round one or more kernel headers. If there
are `public' interfaces that the kernel exports, such as the sg device, we
can add libc headers for them.

p.