summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/qemu/qemu/0001-linux-user-assume-__NR_gettid-always-exists.patch
diff options
context:
space:
mode:
authorArmin Kuster <akuster808@gmail.com>2019-10-05 21:30:56 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-10-10 16:52:30 +0100
commitf3a4b208500790f2163dab3fefc8f18b57d37621 (patch)
treeb3e34a58ddf84f90cd6044408de390122c3b183f /meta/recipes-devtools/qemu/qemu/0001-linux-user-assume-__NR_gettid-always-exists.patch
parent93cde0830101b26e598f7366fbaccb3f493d1f7f (diff)
downloadpoky-f3a4b208500790f2163dab3fefc8f18b57d37621.tar.gz
qemu: fix build issue on new hosts with glibc 2.30
This fixes the following error: TOPDIR/tmp/work/x86_64-linux/qemu-native/3.1.0-r0/qemu-3.1.0/linux-user/syscall.c:254:16: error: static declaration of ‘gettid’ follows non-static declaration 254 | _syscall0(int, gettid) | ^~~~~~ TOPDIR/tmp/work/x86_64-linux/qemu-native/3.1.0-r0/qemu-3.1.0/linux-user/syscall.c:185:13: note: in definition of macro ‘_syscall0’ 185 | static type name (void) \ | ^~~~ In file included from /usr/include/unistd.h:1170, from TOPDIR/tmp/work/x86_64-linux/qemu-native/3.1.0-r0/qemu-3.1.0/include/qemu/osdep.h:90, from TOPDIR/tmp/work/x86_64-linux/qemu-native/3.1.0-r0/qemu-3.1.0/linux-user/syscall.c:20: /usr/include/bits/unistd_ext.h:34:16: note: previous declaration of ‘gettid’ was here 34 | extern __pid_t gettid (void) __THROW; | ^~~~~~ (From OE-Core rev: 5b5ca76cc5dd424248c7e687e562597a2c85df57) Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/qemu/qemu/0001-linux-user-assume-__NR_gettid-always-exists.patch')
-rw-r--r--meta/recipes-devtools/qemu/qemu/0001-linux-user-assume-__NR_gettid-always-exists.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/meta/recipes-devtools/qemu/qemu/0001-linux-user-assume-__NR_gettid-always-exists.patch b/meta/recipes-devtools/qemu/qemu/0001-linux-user-assume-__NR_gettid-always-exists.patch
new file mode 100644
index 0000000000..767b200ba0
--- /dev/null
+++ b/meta/recipes-devtools/qemu/qemu/0001-linux-user-assume-__NR_gettid-always-exists.patch
@@ -0,0 +1,49 @@
1From 184943d827ce09375284e6fbb9fd5eeb9e369529 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
3Date: Wed, 20 Mar 2019 16:18:41 +0000
4Subject: [PATCH] linux-user: assume __NR_gettid always exists
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9The gettid syscall was introduced in Linux 2.4.11. This is old enough
10that we can assume it always exists and thus not bother with the
11conditional backcompat logic.
12
13Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
14Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
15Reviewed-by: Laurent Vivier <laurent@vivier.eu>
16Message-Id: <20190320161842.13908-2-berrange@redhat.com>
17Signed-off-by: Laurent Vivier <laurent@vivier.eu>
18
19Upstream-Status: Backport
20dependancy patch for fix
21
22Signed-off-by: Armin Kuster <akuster808@gmail.com>
23
24---
25
26
27 linux-user/syscall.c | 8 --------
28 1 file changed, 8 deletions(-)
29
30Index: qemu-3.0.0/linux-user/syscall.c
31===================================================================
32--- qemu-3.0.0.orig/linux-user/syscall.c
33+++ qemu-3.0.0/linux-user/syscall.c
34@@ -251,15 +251,7 @@ static type name (type1 arg1,type2 arg2,
35 #define TARGET_NR__llseek TARGET_NR_llseek
36 #endif
37
38-#ifdef __NR_gettid
39 _syscall0(int, gettid)
40-#else
41-/* This is a replacement for the host gettid() and must return a host
42- errno. */
43-static int gettid(void) {
44- return -ENOSYS;
45-}
46-#endif
47
48 /* For the 64-bit guest on 32-bit host case we must emulate
49 * getdents using getdents64, because otherwise the host