diff --git a/packages/linux/patches/default/linux-001-backport-tools-build-check-if-gettid-is-available.patch b/packages/linux/patches/default/linux-001-backport-tools-build-check-if-gettid-is-available.patch deleted file mode 100644 index 94d48cfd5b..0000000000 --- a/packages/linux/patches/default/linux-001-backport-tools-build-check-if-gettid-is-available.patch +++ /dev/null @@ -1,170 +0,0 @@ -From 4541a8bb13a86e504416a13360c8dc64d2fd612a Mon Sep 17 00:00:00 2001 -From: Arnaldo Carvalho de Melo -Date: Thu, 13 Jun 2019 12:04:19 -0300 -Subject: [PATCH] tools build: Check if gettid() is available before providing - helper -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Laura reported that the perf build failed in fedora when we got a glibc -that provides gettid(), which I reproduced using fedora rawhide with the -glibc-devel-2.29.9000-26.fc31.x86_64 package. - -Add a feature check to avoid providing a gettid() helper in such -systems. - -On a fedora rawhide system with this patch applied we now get: - - [root@7a5f55352234 perf]# grep gettid /tmp/build/perf/FEATURE-DUMP - feature-gettid=1 - [root@7a5f55352234 perf]# cat /tmp/build/perf/feature/test-gettid.make.output - [root@7a5f55352234 perf]# ldd /tmp/build/perf/feature/test-gettid.bin - linux-vdso.so.1 (0x00007ffc6b1f6000) - libc.so.6 => /lib64/libc.so.6 (0x00007f04e0a74000) - /lib64/ld-linux-x86-64.so.2 (0x00007f04e0c47000) - [root@7a5f55352234 perf]# nm /tmp/build/perf/feature/test-gettid.bin | grep -w gettid - U gettid@@GLIBC_2.30 - [root@7a5f55352234 perf]# - -While on a fedora:29 system: - - [acme@quaco perf]$ grep gettid /tmp/build/perf/FEATURE-DUMP - feature-gettid=0 - [acme@quaco perf]$ cat /tmp/build/perf/feature/test-gettid.make.output - test-gettid.c: In function ‘main’: - test-gettid.c:8:9: error: implicit declaration of function ‘gettid’; did you mean ‘getgid’? [-Werror=implicit-function-declaration] - return gettid(); - ^~~~~~ - getgid - cc1: all warnings being treated as errors - [acme@quaco perf]$ - -Reported-by: Laura Abbott -Tested-by: Laura Abbott -Acked-by: Jiri Olsa -Cc: Adrian Hunter -Cc: Florian Weimer -Cc: Namhyung Kim -Cc: Stephane Eranian -Link: https://lkml.kernel.org/n/tip-yfy3ch53agmklwu9o7rlgf9c@git.kernel.org -Signed-off-by: Arnaldo Carvalho de Melo ---- - tools/build/Makefile.feature | 1 + - tools/build/feature/Makefile | 4 ++++ - tools/build/feature/test-all.c | 5 +++++ - tools/build/feature/test-gettid.c | 11 +++++++++++ - tools/perf/Makefile.config | 4 ++++ - tools/perf/jvmti/jvmti_agent.c | 2 ++ - 6 files changed, 27 insertions(+) - create mode 100644 tools/build/feature/test-gettid.c - -diff --git a/tools/build/Makefile.feature b/tools/build/Makefile.feature -index 3b24231c58a2b..50377cc2f5f99 100644 ---- a/tools/build/Makefile.feature -+++ b/tools/build/Makefile.feature -@@ -36,6 +36,7 @@ FEATURE_TESTS_BASIC := \ - fortify-source \ - sync-compare-and-swap \ - get_current_dir_name \ -+ gettid \ - glibc \ - gtk2 \ - gtk2-infobar \ -diff --git a/tools/build/feature/Makefile b/tools/build/feature/Makefile -index 4b8244ee65ce6..523ee42db0c8d 100644 ---- a/tools/build/feature/Makefile -+++ b/tools/build/feature/Makefile -@@ -54,6 +54,7 @@ FILES= \ - test-get_cpuid.bin \ - test-sdt.bin \ - test-cxx.bin \ -+ test-gettid.bin \ - test-jvmti.bin \ - test-jvmti-cmlr.bin \ - test-sched_getcpu.bin \ -@@ -267,6 +268,9 @@ $(OUTPUT)test-sdt.bin: - $(OUTPUT)test-cxx.bin: - $(BUILDXX) -std=gnu++11 - -+$(OUTPUT)test-gettid.bin: -+ $(BUILD) -+ - $(OUTPUT)test-jvmti.bin: - $(BUILD) - -diff --git a/tools/build/feature/test-all.c b/tools/build/feature/test-all.c -index a59c537050934..3b3d5d72124a5 100644 ---- a/tools/build/feature/test-all.c -+++ b/tools/build/feature/test-all.c -@@ -38,6 +38,10 @@ - # include "test-get_current_dir_name.c" - #undef main - -+#define main main_test_gettid -+# include "test-gettid.c" -+#undef main -+ - #define main main_test_glibc - # include "test-glibc.c" - #undef main -@@ -195,6 +199,7 @@ int main(int argc, char *argv[]) - main_test_libelf(); - main_test_libelf_mmap(); - main_test_get_current_dir_name(); -+ main_test_gettid(); - main_test_glibc(); - main_test_dwarf(); - main_test_dwarf_getlocations(); -diff --git a/tools/build/feature/test-gettid.c b/tools/build/feature/test-gettid.c -new file mode 100644 -index 0000000000000..ef24e42d3f1b8 ---- /dev/null -+++ b/tools/build/feature/test-gettid.c -@@ -0,0 +1,11 @@ -+// SPDX-License-Identifier: GPL-2.0 -+// Copyright (C) 2019, Red Hat Inc, Arnaldo Carvalho de Melo -+#define _GNU_SOURCE -+#include -+ -+int main(void) -+{ -+ return gettid(); -+} -+ -+#undef _GNU_SOURCE -diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config -index 51dd00f65709d..5f16a20cae86a 100644 ---- a/tools/perf/Makefile.config -+++ b/tools/perf/Makefile.config -@@ -332,6 +332,10 @@ ifeq ($(feature-get_current_dir_name), 1) - CFLAGS += -DHAVE_GET_CURRENT_DIR_NAME - endif - -+ifeq ($(feature-gettid), 1) -+ CFLAGS += -DHAVE_GETTID -+endif -+ - ifdef NO_LIBELF - NO_DWARF := 1 - NO_DEMANGLE := 1 -diff --git a/tools/perf/jvmti/jvmti_agent.c b/tools/perf/jvmti/jvmti_agent.c -index f7eb63cbbc655..88108598d6e94 100644 ---- a/tools/perf/jvmti/jvmti_agent.c -+++ b/tools/perf/jvmti/jvmti_agent.c -@@ -45,10 +45,12 @@ - static char jit_path[PATH_MAX]; - static void *marker_addr; - -+#ifndef HAVE_GETTID - static inline pid_t gettid(void) - { - return (pid_t)syscall(__NR_gettid); - } -+#endif - - static int get_e_machine(struct jitheader *hdr) - { --- -2.20.1 - diff --git a/packages/linux/patches/raspberrypi/linux-001-backport-tools-build-check-if-gettid-is-available.patch b/packages/linux/patches/raspberrypi/linux-001-backport-tools-build-check-if-gettid-is-available.patch deleted file mode 100644 index 94d48cfd5b..0000000000 --- a/packages/linux/patches/raspberrypi/linux-001-backport-tools-build-check-if-gettid-is-available.patch +++ /dev/null @@ -1,170 +0,0 @@ -From 4541a8bb13a86e504416a13360c8dc64d2fd612a Mon Sep 17 00:00:00 2001 -From: Arnaldo Carvalho de Melo -Date: Thu, 13 Jun 2019 12:04:19 -0300 -Subject: [PATCH] tools build: Check if gettid() is available before providing - helper -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Laura reported that the perf build failed in fedora when we got a glibc -that provides gettid(), which I reproduced using fedora rawhide with the -glibc-devel-2.29.9000-26.fc31.x86_64 package. - -Add a feature check to avoid providing a gettid() helper in such -systems. - -On a fedora rawhide system with this patch applied we now get: - - [root@7a5f55352234 perf]# grep gettid /tmp/build/perf/FEATURE-DUMP - feature-gettid=1 - [root@7a5f55352234 perf]# cat /tmp/build/perf/feature/test-gettid.make.output - [root@7a5f55352234 perf]# ldd /tmp/build/perf/feature/test-gettid.bin - linux-vdso.so.1 (0x00007ffc6b1f6000) - libc.so.6 => /lib64/libc.so.6 (0x00007f04e0a74000) - /lib64/ld-linux-x86-64.so.2 (0x00007f04e0c47000) - [root@7a5f55352234 perf]# nm /tmp/build/perf/feature/test-gettid.bin | grep -w gettid - U gettid@@GLIBC_2.30 - [root@7a5f55352234 perf]# - -While on a fedora:29 system: - - [acme@quaco perf]$ grep gettid /tmp/build/perf/FEATURE-DUMP - feature-gettid=0 - [acme@quaco perf]$ cat /tmp/build/perf/feature/test-gettid.make.output - test-gettid.c: In function ‘main’: - test-gettid.c:8:9: error: implicit declaration of function ‘gettid’; did you mean ‘getgid’? [-Werror=implicit-function-declaration] - return gettid(); - ^~~~~~ - getgid - cc1: all warnings being treated as errors - [acme@quaco perf]$ - -Reported-by: Laura Abbott -Tested-by: Laura Abbott -Acked-by: Jiri Olsa -Cc: Adrian Hunter -Cc: Florian Weimer -Cc: Namhyung Kim -Cc: Stephane Eranian -Link: https://lkml.kernel.org/n/tip-yfy3ch53agmklwu9o7rlgf9c@git.kernel.org -Signed-off-by: Arnaldo Carvalho de Melo ---- - tools/build/Makefile.feature | 1 + - tools/build/feature/Makefile | 4 ++++ - tools/build/feature/test-all.c | 5 +++++ - tools/build/feature/test-gettid.c | 11 +++++++++++ - tools/perf/Makefile.config | 4 ++++ - tools/perf/jvmti/jvmti_agent.c | 2 ++ - 6 files changed, 27 insertions(+) - create mode 100644 tools/build/feature/test-gettid.c - -diff --git a/tools/build/Makefile.feature b/tools/build/Makefile.feature -index 3b24231c58a2b..50377cc2f5f99 100644 ---- a/tools/build/Makefile.feature -+++ b/tools/build/Makefile.feature -@@ -36,6 +36,7 @@ FEATURE_TESTS_BASIC := \ - fortify-source \ - sync-compare-and-swap \ - get_current_dir_name \ -+ gettid \ - glibc \ - gtk2 \ - gtk2-infobar \ -diff --git a/tools/build/feature/Makefile b/tools/build/feature/Makefile -index 4b8244ee65ce6..523ee42db0c8d 100644 ---- a/tools/build/feature/Makefile -+++ b/tools/build/feature/Makefile -@@ -54,6 +54,7 @@ FILES= \ - test-get_cpuid.bin \ - test-sdt.bin \ - test-cxx.bin \ -+ test-gettid.bin \ - test-jvmti.bin \ - test-jvmti-cmlr.bin \ - test-sched_getcpu.bin \ -@@ -267,6 +268,9 @@ $(OUTPUT)test-sdt.bin: - $(OUTPUT)test-cxx.bin: - $(BUILDXX) -std=gnu++11 - -+$(OUTPUT)test-gettid.bin: -+ $(BUILD) -+ - $(OUTPUT)test-jvmti.bin: - $(BUILD) - -diff --git a/tools/build/feature/test-all.c b/tools/build/feature/test-all.c -index a59c537050934..3b3d5d72124a5 100644 ---- a/tools/build/feature/test-all.c -+++ b/tools/build/feature/test-all.c -@@ -38,6 +38,10 @@ - # include "test-get_current_dir_name.c" - #undef main - -+#define main main_test_gettid -+# include "test-gettid.c" -+#undef main -+ - #define main main_test_glibc - # include "test-glibc.c" - #undef main -@@ -195,6 +199,7 @@ int main(int argc, char *argv[]) - main_test_libelf(); - main_test_libelf_mmap(); - main_test_get_current_dir_name(); -+ main_test_gettid(); - main_test_glibc(); - main_test_dwarf(); - main_test_dwarf_getlocations(); -diff --git a/tools/build/feature/test-gettid.c b/tools/build/feature/test-gettid.c -new file mode 100644 -index 0000000000000..ef24e42d3f1b8 ---- /dev/null -+++ b/tools/build/feature/test-gettid.c -@@ -0,0 +1,11 @@ -+// SPDX-License-Identifier: GPL-2.0 -+// Copyright (C) 2019, Red Hat Inc, Arnaldo Carvalho de Melo -+#define _GNU_SOURCE -+#include -+ -+int main(void) -+{ -+ return gettid(); -+} -+ -+#undef _GNU_SOURCE -diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config -index 51dd00f65709d..5f16a20cae86a 100644 ---- a/tools/perf/Makefile.config -+++ b/tools/perf/Makefile.config -@@ -332,6 +332,10 @@ ifeq ($(feature-get_current_dir_name), 1) - CFLAGS += -DHAVE_GET_CURRENT_DIR_NAME - endif - -+ifeq ($(feature-gettid), 1) -+ CFLAGS += -DHAVE_GETTID -+endif -+ - ifdef NO_LIBELF - NO_DWARF := 1 - NO_DEMANGLE := 1 -diff --git a/tools/perf/jvmti/jvmti_agent.c b/tools/perf/jvmti/jvmti_agent.c -index f7eb63cbbc655..88108598d6e94 100644 ---- a/tools/perf/jvmti/jvmti_agent.c -+++ b/tools/perf/jvmti/jvmti_agent.c -@@ -45,10 +45,12 @@ - static char jit_path[PATH_MAX]; - static void *marker_addr; - -+#ifndef HAVE_GETTID - static inline pid_t gettid(void) - { - return (pid_t)syscall(__NR_gettid); - } -+#endif - - static int get_e_machine(struct jitheader *hdr) - { --- -2.20.1 -