1 |
vapier 13/11/24 17:45:00 |
2 |
|
3 |
Modified: README.history |
4 |
Added: |
5 |
00_all_0013-alpha-Fix-signal-thunk-unwind-info.patch |
6 |
Log: |
7 |
add fix from upstream for signal handling #480740 by Tobias Klausmann |
8 |
|
9 |
Revision Changes Path |
10 |
1.2 src/patchsets/glibc/2.18/README.history |
11 |
|
12 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/README.history?rev=1.2&view=markup |
13 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/README.history?rev=1.2&content-type=text/plain |
14 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/README.history?r1=1.1&r2=1.2 |
15 |
|
16 |
Index: README.history |
17 |
=================================================================== |
18 |
RCS file: /var/cvsroot/gentoo/src/patchsets/glibc/2.18/README.history,v |
19 |
retrieving revision 1.1 |
20 |
retrieving revision 1.2 |
21 |
diff -u -r1.1 -r1.2 |
22 |
--- README.history 16 Aug 2013 21:35:16 -0000 1.1 |
23 |
+++ README.history 24 Nov 2013 17:45:00 -0000 1.2 |
24 |
@@ -1,3 +1,9 @@ |
25 |
+2 24 Nov 2013 |
26 |
+ + 00_all_0013-alpha-Fix-signal-thunk-unwind-info.patch |
27 |
+ + 00_all_0014-hppa-add-fanotify_mark.patch |
28 |
+ + 00_all_0015-Accept-make-versions-4.0-and-greater.patch |
29 |
+ + 00_all_0016-Don-t-use-broken-DL_AUTO_FUNCTION_ADDRESS.patch |
30 |
+ |
31 |
1 16 Aug 2013 |
32 |
+ 00_all_0001-disable-ldconfig-during-install.patch |
33 |
+ 00_all_0002-workaround-crash-when-handling-signals-in-static-PIE.patch |
34 |
|
35 |
|
36 |
|
37 |
1.1 src/patchsets/glibc/2.18/00_all_0013-alpha-Fix-signal-thunk-unwind-info.patch |
38 |
|
39 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/00_all_0013-alpha-Fix-signal-thunk-unwind-info.patch?rev=1.1&view=markup |
40 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.18/00_all_0013-alpha-Fix-signal-thunk-unwind-info.patch?rev=1.1&content-type=text/plain |
41 |
|
42 |
Index: 00_all_0013-alpha-Fix-signal-thunk-unwind-info.patch |
43 |
=================================================================== |
44 |
From f73b1129ae3e1f1f2a36b58442c5b35a6ce40827 Mon Sep 17 00:00:00 2001 |
45 |
From: Richard Henderson <rth@×××××××.net> |
46 |
Date: Sat, 16 Nov 2013 06:34:39 +1000 |
47 |
Subject: [PATCH 13/16] alpha: Fix signal thunk unwind info |
48 |
|
49 |
2013-11-16 Richard Henderson <rth@××××××.com> |
50 |
|
51 |
* sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Include a nop |
52 |
before each signal thunk. |
53 |
|
54 |
URL: https://bugs.gentoo.org/480740 |
55 |
URL: https://sourceware.org/ml/libc-ports/2013-11/msg00000.html |
56 |
|
57 |
(cherry picked from commit 027e32bd42314e17095ba39df82ef293f4a72c09) |
58 |
--- |
59 |
ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S | 18 ++++++++++++++---- |
60 |
1 file changed, 14 insertions(+), 4 deletions(-) |
61 |
|
62 |
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S b/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S |
63 |
index 3d291fd..6efa738 100644 |
64 |
--- a/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S |
65 |
+++ b/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S |
66 |
@@ -83,14 +83,21 @@ PSEUDO_END(__syscall_rt_sigaction) |
67 |
cfi_offset (64, \base + 2 * 8) |
68 |
.endm |
69 |
|
70 |
- .align 4 |
71 |
- |
72 |
cfi_startproc |
73 |
cfi_return_column (64) |
74 |
.cfi_signal_frame |
75 |
SIGCONTEXT_REGS -648 |
76 |
- |
77 |
cfi_def_cfa_offset (648) |
78 |
+ |
79 |
+ /* While this frame is marked as a signal frame, that only applies |
80 |
+ to how this return address is handled for the outer frame. |
81 |
+ The return address that arrived here, from the inner frame, is |
82 |
+ not marked as a signal frame and so the unwinder still tries to |
83 |
+ subtract 1 to examine the presumed call insn. Thus we must |
84 |
+ extend the unwind info to a nop before the start. */ |
85 |
+ nop |
86 |
+ .align 4 |
87 |
+ |
88 |
__syscall_sigreturn: |
89 |
mov sp, a0 |
90 |
ldi v0, __NR_sigreturn |
91 |
@@ -98,8 +105,11 @@ __syscall_sigreturn: |
92 |
.size __syscall_sigreturn, .-__syscall_sigreturn |
93 |
.type __syscall_sigreturn, @function |
94 |
|
95 |
- .align 4 |
96 |
+ /* See above wrt including the nop. */ |
97 |
cfi_def_cfa_offset (176 + 648) |
98 |
+ nop |
99 |
+ .align 4 |
100 |
+ |
101 |
__syscall_rt_sigreturn: |
102 |
mov sp,a0 |
103 |
ldi v0,__NR_rt_sigreturn |
104 |
-- |
105 |
1.8.4.3 |