I take it the policy JG is referring to applies to including any
kernel header files at all in userspace programs, and that __KERNEL__
removal is a mere consequence of that policy.
AC points out that syscall interfaces in glibc are a reasonable
exception to that policy.
What about a header like ethtool.h? Isn't its whole reason for
existing to provide a common ABI for ethtool.c and the various
drivers that support it?
Likewise sockios.h, which ethtool (and no doubt many others) also
#includes. Unless you're going to encapsulate all possible ioctl
interfaces into libc, sockios.h (for example) provides a piece of the
ABI that's needed by the user code, not just by libc. Why would it
make sense to require retyping of this stuff?
If, on the other hand, the argument is that user-kernel ABI
definitions should be isolated in their own headers, and not mixed up
(hence __KERNEL__), that's a much more restricted argument. My
impression is that this is *not* the argument though; is it?
-- /Jonathan Lundell. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/