summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch')
-rw-r--r--meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch19
1 files changed, 10 insertions, 9 deletions
diff --git a/meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch b/meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch
index 508ed6af38..f02f13f79c 100644
--- a/meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch
+++ b/meta/recipes-support/libunwind/libunwind/0003-x86-Stub-out-x86_local_resume.patch
@@ -1,7 +1,7 @@
1From f6866b9e4a6341c50eb1d923dbf48eca2ca40140 Mon Sep 17 00:00:00 2001 1From 0b2243f19d4ea12a2a68478a5aed503947a800af Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 22 Mar 2016 16:19:29 +0000 3Date: Tue, 22 Mar 2016 16:19:29 +0000
4Subject: [PATCH 3/6] x86: Stub out x86_local_resume() 4Subject: [PATCH] x86: Stub out x86_local_resume()
5 5
6its purpose seems 6its purpose seems
7to be unwinding across signal handler boundaries, which cannot happen 7to be unwinding across signal handler boundaries, which cannot happen
@@ -13,14 +13,14 @@ Upstream-Status: Pending
13Signed-off-by: Khem Raj <raj.khem@gmail.com> 13Signed-off-by: Khem Raj <raj.khem@gmail.com>
14 14
15--- 15---
16 src/x86/Gos-linux.c | 22 +--------------------- 16 src/x86/Gos-linux.c | 26 +-------------------------
17 1 file changed, 1 insertion(+), 21 deletions(-) 17 1 file changed, 1 insertion(+), 25 deletions(-)
18 18
19diff --git a/src/x86/Gos-linux.c b/src/x86/Gos-linux.c 19diff --git a/src/x86/Gos-linux.c b/src/x86/Gos-linux.c
20index fb9a5e3..c25ae0c 100644 20index d448dce..c25ae0c 100644
21--- a/src/x86/Gos-linux.c 21--- a/src/x86/Gos-linux.c
22+++ b/src/x86/Gos-linux.c 22+++ b/src/x86/Gos-linux.c
23@@ -284,27 +284,7 @@ x86_r_uc_addr (ucontext_t *uc, int reg) 23@@ -284,31 +284,7 @@ x86_r_uc_addr (ucontext_t *uc, int reg)
24 HIDDEN int 24 HIDDEN int
25 x86_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, void *arg) 25 x86_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, void *arg)
26 { 26 {
@@ -38,17 +38,18 @@ index fb9a5e3..c25ae0c 100644
38- struct sigcontext *sc = (struct sigcontext *) c->sigcontext_addr; 38- struct sigcontext *sc = (struct sigcontext *) c->sigcontext_addr;
39- 39-
40- Debug (8, "resuming at ip=%x via sigreturn(%p)\n", c->dwarf.ip, sc); 40- Debug (8, "resuming at ip=%x via sigreturn(%p)\n", c->dwarf.ip, sc);
41-#if !defined(__ANDROID__)
41- x86_sigreturn (sc); 42- x86_sigreturn (sc);
43-#endif
42- } 44- }
43- else 45- else
44- { 46- {
45- Debug (8, "resuming at ip=%x via setcontext()\n", c->dwarf.ip); 47- Debug (8, "resuming at ip=%x via setcontext()\n", c->dwarf.ip);
48-#if !defined(__ANDROID__)
46- setcontext (uc); 49- setcontext (uc);
50-#endif
47- } 51- }
48+ *(volatile char *)0=0; 52+ *(volatile char *)0=0;
49 return -UNW_EINVAL; 53 return -UNW_EINVAL;
50 } 54 }
51 55
52--
532.20.1
54