Drop the exporting of empty <linux/byteorder/generic.h>

Fix up the contents of <linux/byteorder/> 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 <rpjday@crashcourse.ca>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Robert P. J. Day 2008-04-30 00:55:14 -07:00 committed by Linus Torvalds
parent ae50884f66
commit 969a19f1c4
4 changed files with 6 additions and 12 deletions

View File

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

View File

@ -101,6 +101,8 @@ static inline __u16 __be16_to_cpup(const __be16 *p)
#define __cpu_to_be16s(x) do {} while (0)
#define __be16_to_cpus(x) do {} while (0)
#ifdef __KERNEL__
#include <linux/byteorder/generic.h>
#endif
#endif /* _LINUX_BYTEORDER_BIG_ENDIAN_H */

View File

@ -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, u64 val)
*var = cpu_to_be64(be64_to_cpu(*var) + val);
}
#endif /* KERNEL */
#endif /* _LINUX_BYTEORDER_GENERIC_H */

View File

@ -101,6 +101,8 @@ static inline __u16 __be16_to_cpup(const __be16 *p)
#define __cpu_to_be16s(x) __swab16s((x))
#define __be16_to_cpus(x) __swab16s((x))
#ifdef __KERNEL__
#include <linux/byteorder/generic.h>
#endif
#endif /* _LINUX_BYTEORDER_LITTLE_ENDIAN_H */