summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2019-11-07 22:55:19 +0000
committerSergei Trofimovich <slyfox@gentoo.org>2019-11-07 22:55:19 +0000
commitba734355267d4accb9a4bd8143dbc880ac5044bc (patch)
tree71004b150c501b041e4cff6094631533f92b0852
parent5.3: copy 5.2 patches as is (diff)
downloadlinux-headers-patches-ba734355267d4accb9a4bd8143dbc880ac5044bc.tar.gz
linux-headers-patches-ba734355267d4accb9a4bd8143dbc880ac5044bc.tar.bz2
linux-headers-patches-ba734355267d4accb9a4bd8143dbc880ac5044bc.zip
5.3: don't include sysinfo.h on non-glibc libcs
https://lore.kernel.org/patchwork/patch/449607/ https://gitweb.gentoo.org/proj/musl.git/tree/sys-kernel/linux-headers/files/libc-5.1-remove-sysinfo_h-from-kernel_h.patch Reported-by: Anarchy Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
-rw-r--r--5.3/00_all_0009_glibc-specific-inclusion-of-sysinfo.h-in-kernel.h.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/5.3/00_all_0009_glibc-specific-inclusion-of-sysinfo.h-in-kernel.h.patch b/5.3/00_all_0009_glibc-specific-inclusion-of-sysinfo.h-in-kernel.h.patch
new file mode 100644
index 0000000..df075dc
--- /dev/null
+++ b/5.3/00_all_0009_glibc-specific-inclusion-of-sysinfo.h-in-kernel.h.patch
@@ -0,0 +1,46 @@
+https://lore.kernel.org/patchwork/patch/449607/
+https://gitweb.gentoo.org/proj/musl.git/tree/sys-kernel/linux-headers/files/libc-5.1-remove-sysinfo_h-from-kernel_h.patch
+
+Date: Fri, 14 Mar 2014 17:14:10 +0100
+From: David Heidelberger <david.heidelberger@ixit.cz>
+To: linux-kernel@vger.kernel.org
+Cc: maillist-linux@barfooze.de, torvalds@linux-foundation.org
+Subject: [PATCH 1/4] glibc specific inclusion of sysinfo.h in kernel.h
+Message-ID: <130a9e0c237bae10e631a5ae52c5e2c8@ixit.cz>
+User-Agent: Roundcube Webmail/0.9.5
+Sender: linux-kernel-owner@vger.kernel.org
+List-ID: <linux-kernel.vger.kernel.org>
+X-Mailing-List: linux-kernel@vger.kernel.org
+
+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@barfooze.de>
+Signed-off-by: David Heidelberger <david.heidelberger@ixit.cz>
+---
+ 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