aboutsummaryrefslogtreecommitdiffstats
path: root/main/strace/s390x-signal-framesize.patch
diff options
context:
space:
mode:
authorTuan M. Hoang <tmhoang@flatglobe.org>2017-04-09 02:34:31 -0400
committerLeonardo Arena <rnalrd@alpinelinux.org>2017-04-10 13:17:16 +0000
commitb1f6d6b37b437feae9b6148142fdb0b8eaf9ccc0 (patch)
tree6aed179c3e9e537916064575f065019d534dbce7 /main/strace/s390x-signal-framesize.patch
parent03b19d96135e99296c9e511775f4fdd62dbfb56b (diff)
downloadaports-b1f6d6b37b437feae9b6148142fdb0b8eaf9ccc0.tar.bz2
aports-b1f6d6b37b437feae9b6148142fdb0b8eaf9ccc0.tar.xz
main/strace: fix temp bug in s390x
Diffstat (limited to 'main/strace/s390x-signal-framesize.patch')
-rw-r--r--main/strace/s390x-signal-framesize.patch17
1 files changed, 17 insertions, 0 deletions
diff --git a/main/strace/s390x-signal-framesize.patch b/main/strace/s390x-signal-framesize.patch
new file mode 100644
index 0000000000..48a15d61c7
--- /dev/null
+++ b/main/strace/s390x-signal-framesize.patch
@@ -0,0 +1,17 @@
+__SIGNAL_FRAMESIZE is defined in asm/sigcontext.h but including it would make
+conflict with struct sigcontext since we compile with it in musl. This patch
+is temporary till musl upstream has a proper solution for sigcontext.
+
+diff --git a/linux/s390/arch_sigreturn.c b/linux/s390/arch_sigreturn.c
+index d1b8598..c0a4658 100644
+--- a/linux/s390/arch_sigreturn.c
++++ b/linux/s390/arch_sigreturn.c
+@@ -2,7 +2,7 @@ static void
+ arch_sigreturn(struct tcb *tcp)
+ {
+ unsigned long mask[NSIG_BYTES / sizeof(long)];
+- const unsigned long addr = *s390_frame_ptr + __SIGNAL_FRAMESIZE;
++ const unsigned long addr = *s390_frame_ptr + 160;
+
+ if (umove(tcp, addr, &mask) < 0) {
+ tprintf("{mask=%#lx}", addr);