summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/strace/files')
-rw-r--r--dev-util/strace/files/strace-4.5.20-sparc.patch42
-rw-r--r--dev-util/strace/files/strace-4.7-glibc-2.15.patch53
-rw-r--r--dev-util/strace/files/strace-4.7-x32.patch89
3 files changed, 184 insertions, 0 deletions
diff --git a/dev-util/strace/files/strace-4.5.20-sparc.patch b/dev-util/strace/files/strace-4.5.20-sparc.patch
new file mode 100644
index 000000000000..daae6accdb42
--- /dev/null
+++ b/dev-util/strace/files/strace-4.5.20-sparc.patch
@@ -0,0 +1,42 @@
+https://bugs.gentoo.org/336939
+
+From b7915d15b813c56a36510e942fa4e5ec21307924 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Frederik=20Sch=C3=BCler?= <fs@debian.org>
+Date: Thu, 29 Apr 2010 00:48:45 +0200
+Subject: [PATCH] linux/sparc: add missing syscall declarations
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+* linux/sparc/syscall.h: Sync with linux/syscall.h
+
+Signed-off-by: Frederik Schüler <fs@debian.org>
+---
+ linux/sparc/syscall.h | 5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+diff --git a/linux/sparc/syscall.h b/linux/sparc/syscall.h
+index 03e3a71..07bc777 100644
+--- a/linux/sparc/syscall.h
++++ b/linux/sparc/syscall.h
+@@ -208,12 +208,17 @@ int sys_timer_create(), sys_timer_settime(), sys_timer_gettime();
+ int sys_io_setup(), sys_io_destroy(), sys_io_submit(), sys_io_cancel(), sys_io_getevents();
+ int sys_mq_open(), sys_mq_unlink(), sys_mq_timedsend(), sys_mq_timedreceive(), sys_mq_notify(), sys_mq_getsetattr();
+ int sys_waitid();
++int sys_mbind(), sys_get_mempolicy(), sys_set_mempolicy();
++int sys_utimensat();
++int sys_fallocate(), sys_timerfd_create(), sys_timerfd_settime(), sys_timerfd_gettime();
+ int sys_openat(), sys_mkdirat(), sys_mknodat(), sys_fchownat(), sys_futimesat(), sys_newfstatat(), sys_unlinkat(), sys_renameat(), sys_linkat(), sys_symlinkat(), sys_readlinkat(), sys_fchmodat(), sys_faccessat();
+ int sys_pselect6(), sys_ppoll();
+ int sys_unshare();
+ int sys_move_pages(), sys_getcpu();
+ int sys_epoll_pwait();
+ int sys_signalfd(), sys_timerfd(), sys_eventfd();
++int sys_signalfd4(), sys_eventfd2(), sys_epoll_create1(), sys_dup3(), sys_pipe2();
++int sys_inotify_init1();
+
+ # define SYS_socket_subcall 353
+ #define SYS_sub_socket (SYS_socket_subcall + 1)
+--
+1.7.2
+
diff --git a/dev-util/strace/files/strace-4.7-glibc-2.15.patch b/dev-util/strace/files/strace-4.7-glibc-2.15.patch
new file mode 100644
index 000000000000..c23a86ff98a1
--- /dev/null
+++ b/dev-util/strace/files/strace-4.7-glibc-2.15.patch
@@ -0,0 +1,53 @@
+https://bugs.gentoo.org/414637
+
+From 302e8ec6cd62912a3cd6494ce6702f4ad8dae0e2 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Fri, 4 May 2012 19:30:59 -0400
+Subject: [PATCH] util: fix building when glibc has a stub process_vm_readv
+
+If you have a newer glibc which provides process_vm_readv, but it is built
+against older kernel headers which lack __NR_process_vm_readv, the library
+will contain a stub implementation that just returns ENOSYS. Autoconf
+checks for this case explicitly and will declare it as unavailable. So we
+end up in a case where the headers provide the prototype, but autoconf has
+not defined HAVE_PROCESS_VM_READV, so we hit the same build failure again:
+
+util.c:738:16: error: static declaration of 'process_vm_readv' follows non-static declaration
+/usr/include/bits/uio.h:58:16: note: previous declaration of 'process_vm_readv' was here
+
+So rename our local function to something unique, and add a define so the
+callers all hit the right place.
+
+* util.c (strace_process_vm_readv): Rename from process_vm_readv.
+(process_vm_readv): Define to strace_process_vm_readv.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ util.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/util.c b/util.c
+index d347bd8..f27acdf 100644
+--- a/util.c
++++ b/util.c
+@@ -735,7 +735,8 @@ static bool process_vm_readv_not_supported = 0;
+
+ #if defined(__NR_process_vm_readv)
+ static bool process_vm_readv_not_supported = 0;
+-static ssize_t process_vm_readv(pid_t pid,
++/* Have to avoid duplicating with the C library headers. */
++static ssize_t strace_process_vm_readv(pid_t pid,
+ const struct iovec *lvec,
+ unsigned long liovcnt,
+ const struct iovec *rvec,
+@@ -744,6 +745,7 @@ static ssize_t process_vm_readv(pid_t pid,
+ {
+ return syscall(__NR_process_vm_readv, (long)pid, lvec, liovcnt, rvec, riovcnt, flags);
+ }
++#define process_vm_readv strace_process_vm_readv
+ #else
+ static bool process_vm_readv_not_supported = 1;
+ # define process_vm_readv(...) (errno = ENOSYS, -1)
+--
+1.7.9.7
+
diff --git a/dev-util/strace/files/strace-4.7-x32.patch b/dev-util/strace/files/strace-4.7-x32.patch
new file mode 100644
index 000000000000..4a7a3db41682
--- /dev/null
+++ b/dev-util/strace/files/strace-4.7-x32.patch
@@ -0,0 +1,89 @@
+From 364ed4f14c5edb5ddbc79c72d22498219033b29d Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Mon, 4 Jun 2012 13:19:42 -0400
+Subject: [PATCH] x32: update syscall table
+
+This syncs with the syscall table as it is in linux 3.4.
+
+* linux/x32/syscallent.h (59): Fix comment typo.
+(78): Add missing getdents entry.
+(174): Delete create_module entry (not in the kernel).
+(181, 182, 183, 184, 185): Add missing entries.
+(524, 536, 539, 540): Fix spacing.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ linux/x32/syscallent.h | 24 ++++++++++++------------
+ 1 file changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/linux/x32/syscallent.h b/linux/x32/syscallent.h
+index fcb6a23..ee4c4ce 100644
+--- a/linux/x32/syscallent.h
++++ b/linux/x32/syscallent.h
+@@ -57,7 +57,7 @@
+ { 5, TP, sys_clone, "clone" }, /* 56 */
+ { 0, TP, sys_fork, "fork" }, /* 57 */
+ { 0, TP, sys_vfork, "vfork" }, /* 58 */
+- { }, /* 47 */
++ { }, /* 59 */
+ { 1, TP, sys_exit, "_exit" }, /* 60 */
+ { 4, TP, sys_wait4, "wait4" }, /* 61 */
+ { 2, TS, sys_kill, "kill" }, /* 62 */
+@@ -76,7 +76,7 @@
+ { 1, TD, sys_fdatasync, "fdatasync" }, /* 75 */
+ { 2, TF, sys_truncate, "truncate" }, /* 76 */
+ { 2, TD, sys_ftruncate, "ftruncate" }, /* 77 */
+- { }, /* 78 */
++ { 3, TD, sys_getdents, "getdents" }, /* 78 */
+ { 2, TF, sys_getcwd, "getcwd" }, /* 79 */
+ { 1, TF, sys_chdir, "chdir" }, /* 80 */
+ { 1, TD, sys_fchdir, "fchdir" }, /* 81 */
+@@ -172,18 +172,18 @@
+ { 2, 0, sys_setdomainname, "setdomainname" }, /* 171 */
+ { 1, 0, sys_iopl, "iopl" }, /* 172 */
+ { 3, 0, sys_ioperm, "ioperm" }, /* 173 */
+- { 2, 0, sys_create_module, "create_module" }, /* 174 */
++ { }, /* 174 */
+ { 3, 0, sys_init_module, "init_module" }, /* 175 */
+ { 2, 0, sys_delete_module, "delete_module" }, /* 176 */
+ { }, /* 177 */
+ { }, /* 178 */
+ { 4, 0, sys_quotactl, "quotactl" }, /* 179 */
+ { }, /* 180 */
+- { }, /* 181 */
+- { }, /* 182 */
+- { }, /* 183 */
+- { }, /* 184 */
+- { }, /* 185 */
++ { 5, 0, sys_getpmsg, "getpmsg" }, /* 181 */
++ { 5, 0, sys_putpmsg, "putpmsg" }, /* 182 */
++ { 5, 0, sys_afs_syscall, "afs_syscall" }, /* 183 */
++ { 3, 0, sys_tuxcall, "tuxcall" }, /* 184 */
++ { 3, 0, sys_security, "security" }, /* 185 */
+ { 0, 0, sys_gettid, "gettid" }, /* 186 */
+ { 4, TD, sys_readahead, "readahead" }, /* 187 */
+ { 5, TF, sys_setxattr, "setxattr" }, /* 188 */
+@@ -325,7 +325,7 @@
+ { 4, 0, sys_ptrace, "ptrace" }, /* 521 */
+ { 2, TS, sys_rt_sigpending, "rt_sigpending" }, /* 522 */
+ { 4, TS, sys_rt_sigtimedwait, "rt_sigtimedwait" }, /* 523 */
+- { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 524 */
++ { 3, TS, sys_rt_sigqueueinfo, "rt_sigqueueinfo" }, /* 524 */
+ { 2, TS, sys_sigaltstack, "sigaltstack" }, /* 525 */
+ { 3, 0, sys_timer_create, "timer_create" }, /* 526 */
+ { 2, 0, sys_mq_notify, "mq_notify" }, /* 527 */
+@@ -337,8 +337,8 @@
+ { 6, 0, sys_move_pages, "move_pages" }, /* 533 */
+ { 5, TD, sys_preadv, "preadv" }, /* 534 */
+ { 5, TD, sys_pwritev, "pwritev" }, /* 535 */
+- { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo"}, /* 536 */
++ { 4, TP|TS, sys_rt_tgsigqueueinfo, "rt_tgsigqueueinfo" }, /* 536 */
+ { 5, TN, sys_recvmmsg, "recvmmsg" }, /* 537 */
+ { 4, TN, sys_sendmmsg, "sendmmsg" }, /* 538 */
+- { 6, 0, sys_process_vm_readv, "process_vm_readv"}, /* 539 */
+- { 6, 0, sys_process_vm_writev, "process_vm_writev"}, /* 540 */
++ { 6, 0, sys_process_vm_readv, "process_vm_readv" }, /* 539 */
++ { 6, 0, sys_process_vm_writev, "process_vm_writev" }, /* 540 */
+--
+1.7.9.7
+