[PATCH 1/4] glibc specific inclusion of sysinfo.h in kernel.h

From: David Heidelberger
Date: Fri Mar 14 2014 - 11:23:23 EST


including sysinfo.h from kernel.h makes no sense whatsoever,
but removing it breaks glibc's userspace header,
which includes kernel.h instead of sysinfo.h from their sys/sysinfo.h.
this seems to be a historical mistake.
on musl, including any header that uses kernel.h directly or indirectly
plus sys/sysinfo.h will produce a compile error due to redefinition of
struct sysinfo.h.
so for now, only include it on glibc in order not to break their headers.

Signed-off-by: John Spencer <maillist-linux@xxxxxxxxxxx>
Signed-off-by: David Heidelberger <david.heidelberger@xxxxxxx>
---
include/uapi/linux/kernel.h | 2 ++
1 file changed, 2 insertion(+)

diff --git a/include/uapi/linux/kernel.h b/include/uapi/linux/kernel.h
index 321e399..8c45eeb 100644
--- a/include/uapi/linux/kernel.h
+++ b/include/uapi/linux/kernel.h
@@ -1,7 +1,9 @@
#ifndef _UAPI_LINUX_KERNEL_H
#define _UAPI_LINUX_KERNEL_H

+#ifdef __GLIBC__
#include <linux/sysinfo.h>
+#endif

/*
* 'kernel.h' contains some often-used function prototypes etc
*/
--
1.8.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/