From: "Robert P. J. Day" Fix up the contents of so that it doesn't export a content-free generic.h to user space. This involves: * Removing the __KERNEL__ tests from generic.h and dropping it from Kbuild. * Wrapping the inclusions of generic.h in both big_endian.h and little_endian.h in __KERNEL__ tests. * Shifting big_endian.h and little_endian.h from header-y to unifdef-y in Kbuild. Signed-off-by: Robert P. J. Day Signed-off-by: Andrew Morton --- include/linux/byteorder/Kbuild | 6 ++---- include/linux/byteorder/big_endian.h | 2 ++ include/linux/byteorder/generic.h | 8 -------- include/linux/byteorder/little_endian.h | 2 ++ 4 files changed, 6 insertions(+), 12 deletions(-) diff -puN include/linux/byteorder/Kbuild~drop-the-exporting-of-empty-linux-byteorder-generich include/linux/byteorder/Kbuild --- a/include/linux/byteorder/Kbuild~drop-the-exporting-of-empty-linux-byteorder-generich +++ a/include/linux/byteorder/Kbuild @@ -1,5 +1,3 @@ -header-y += big_endian.h -header-y += little_endian.h - -unifdef-y += generic.h +unifdef-y += big_endian.h +unifdef-y += little_endian.h unifdef-y += swab.h diff -puN include/linux/byteorder/big_endian.h~drop-the-exporting-of-empty-linux-byteorder-generich include/linux/byteorder/big_endian.h --- a/include/linux/byteorder/big_endian.h~drop-the-exporting-of-empty-linux-byteorder-generich +++ a/include/linux/byteorder/big_endian.h @@ -101,6 +101,8 @@ static inline __u16 __be16_to_cpup(const #define __cpu_to_be16s(x) do {} while (0) #define __be16_to_cpus(x) do {} while (0) +#ifdef __KERNEL__ #include +#endif #endif /* _LINUX_BYTEORDER_BIG_ENDIAN_H */ diff -puN include/linux/byteorder/generic.h~drop-the-exporting-of-empty-linux-byteorder-generich include/linux/byteorder/generic.h --- a/include/linux/byteorder/generic.h~drop-the-exporting-of-empty-linux-byteorder-generich +++ a/include/linux/byteorder/generic.h @@ -82,12 +82,6 @@ * */ - -#if defined(__KERNEL__) -/* - * inside the kernel, we can use nicknames; - * outside of it, we must avoid POSIX namespace pollution... - */ #define cpu_to_le64 __cpu_to_le64 #define le64_to_cpu __le64_to_cpu #define cpu_to_le32 __cpu_to_le32 @@ -176,6 +170,4 @@ static inline void be64_add_cpu(__be64 * *var = cpu_to_be64(be64_to_cpu(*var) + val); } -#endif /* KERNEL */ - #endif /* _LINUX_BYTEORDER_GENERIC_H */ diff -puN include/linux/byteorder/little_endian.h~drop-the-exporting-of-empty-linux-byteorder-generich include/linux/byteorder/little_endian.h --- a/include/linux/byteorder/little_endian.h~drop-the-exporting-of-empty-linux-byteorder-generich +++ a/include/linux/byteorder/little_endian.h @@ -101,6 +101,8 @@ static inline __u16 __be16_to_cpup(const #define __cpu_to_be16s(x) __swab16s((x)) #define __be16_to_cpus(x) __swab16s((x)) +#ifdef __KERNEL__ #include +#endif #endif /* _LINUX_BYTEORDER_LITTLE_ENDIAN_H */ _