diff options
author | Arnd Bergmann <arnd@arndb.de> | 2009-09-21 16:37:12 +0200 |
---|---|---|
committer | Sam Ravnborg <sam@ravnborg.org> | 2009-10-11 23:21:25 +0200 |
commit | c01226c3145d173a0d38f9d5b4f229cc23d99ae2 (patch) | |
tree | 7f0eb41f9da3b412115694752d07cb85bb707bdb | |
parent | 17c5ca98833dc3d8f8dd4e85487da238c50cd8c9 (diff) | |
download | kernel_samsung_espresso10-c01226c3145d173a0d38f9d5b4f229cc23d99ae2.zip kernel_samsung_espresso10-c01226c3145d173a0d38f9d5b4f229cc23d99ae2.tar.gz kernel_samsung_espresso10-c01226c3145d173a0d38f9d5b4f229cc23d99ae2.tar.bz2 |
warn about use of uninstalled kernel headers
User applications frequently hit problems when they try to use
the kernel headers directly, rather than the exported headers.
This adds an explicit warning for this case, and points to
a URL holding an explanation of why this is wrong and what
to do about it.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
-rw-r--r-- | include/linux/kernel.h | 6 | ||||
-rw-r--r-- | scripts/headers_install.pl | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index d3cd23f..f4e3184 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -659,6 +659,12 @@ extern int do_sysinfo(struct sysinfo *info); #endif /* __KERNEL__ */ +#ifndef __EXPORTED_HEADERS__ +#ifndef __KERNEL__ +#warning Attempt to use kernel headers from user space, see http://kernelnewbies.org/KernelHeaders +#endif /* __KERNEL__ */ +#endif /* __EXPORTED_HEADERS__ */ + #define SI_LOAD_SHIFT 16 struct sysinfo { long uptime; /* Seconds since boot */ diff --git a/scripts/headers_install.pl b/scripts/headers_install.pl index c6ae405..b89ca2c 100644 --- a/scripts/headers_install.pl +++ b/scripts/headers_install.pl @@ -20,7 +20,7 @@ use strict; my ($readdir, $installdir, $arch, @files) = @ARGV; -my $unifdef = "scripts/unifdef -U__KERNEL__"; +my $unifdef = "scripts/unifdef -U__KERNEL__ -D__EXPORTED_HEADERS__"; foreach my $file (@files) { local *INFILE; |