From 4ae5060ec81b4d4673a4091acd00e16edf16007e Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Wed, 28 Oct 2009 19:00:34 +0100 Subject: debug/strace: add latest version, unmarkprevious EXPERIMENTAL Also propagate the patchset from 4.5.18 to 4.5.19. diff --git a/config/debug/strace.in b/config/debug/strace.in index 8f6ce0d..4fc5846 100644 --- a/config/debug/strace.in +++ b/config/debug/strace.in @@ -8,11 +8,15 @@ choice # Don't remove next line # CT_INSERT_VERSION_BELOW -config STRACE_V_4_5_18 +config STRACE_V_4_5_19 bool - prompt "4.5.18 (EXPERIMENTAL)" + prompt "4.5.19 (EXPERIMENTAL)" depends on EXPERIMENTAL +config STRACE_V_4_5_18 + bool + prompt "4.5.18" + config STRACE_V_4_5_17 bool prompt "4.5.17" @@ -31,6 +35,7 @@ config STRACE_VERSION string # Don't remove next line # CT_INSERT_VERSION_STRING_BELOW + default "4.5.19" if STRACE_V_4_5_19 default "4.5.18" if STRACE_V_4_5_18 default "4.5.17" if STRACE_V_4_5_17 default "4.5.16" if STRACE_V_4_5_16 diff --git a/patches/strace/4.5.19/100-autoreconf.patch b/patches/strace/4.5.19/100-autoreconf.patch new file mode 100644 index 0000000..e7972db --- /dev/null +++ b/patches/strace/4.5.19/100-autoreconf.patch @@ -0,0 +1,77 @@ +diff -durN strace-4.5.19.orig/configure strace-4.5.19/configure +--- strace-4.5.19.orig/configure 2009-10-21 19:41:11.000000000 +0200 ++++ strace-4.5.19/configure 2009-10-28 18:47:18.000000000 +0100 +@@ -5773,6 +5773,73 @@ + cat confdefs.h - <<_ACEOF >conftest.$ac_ext + /* end confdefs.h. */ + ++echo "$as_me:$LINENO: checking for statfs64 in sys/(statfs|vfs).h" >&5 ++echo $ECHO_N "checking for statfs64 in sys/(statfs|vfs).h... $ECHO_C" >&6 ++if test "${ac_cv_type_statfs64+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++#ifdef LINUX ++#include ++#include ++#else ++#include ++#endif ++int ++main () ++{ ++struct statfs64 st; ++ ; ++ return 0; ++} ++_ACEOF ++rm -f conftest.$ac_objext ++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && ++ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; } && ++ { ac_try='test -s conftest.$ac_objext' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; }; then ++ ac_cv_type_statfs64=yes ++else ++ echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ac_cv_type_statfs64=no ++fi ++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ++fi ++ ++echo "$as_me:$LINENO: result: $ac_cv_type_statfs64" >&5 ++echo "${ECHO_T}$ac_cv_type_statfs64" >&6 ++if test "$ac_cv_type_statfs64" = yes ++then ++ ++cat >>confdefs.h <<\_ACEOF ++#define HAVE_STATFS64 1 ++_ACEOF ++ ++fi ++ + + int + main () diff --git a/patches/strace/4.5.19/110-fix-arm-bad-syscall.patch b/patches/strace/4.5.19/110-fix-arm-bad-syscall.patch new file mode 100644 index 0000000..97a60ba --- /dev/null +++ b/patches/strace/4.5.19/110-fix-arm-bad-syscall.patch @@ -0,0 +1,19 @@ +diff -durN strace-4.5.19.orig/syscall.c strace-4.5.19/syscall.c +--- strace-4.5.19.orig/syscall.c 2009-10-12 21:54:21.000000000 +0200 ++++ strace-4.5.19/syscall.c 2009-10-28 18:47:18.000000000 +0100 +@@ -1022,6 +1022,15 @@ + /* + * Note: we only deal with only 32-bit CPUs here. + */ ++ ++ if (!(tcp->flags & TCB_INSYSCALL) && ++ (tcp->flags & TCB_WAITEXECVE)) { ++ /* caught a fake syscall from the execve's exit */ ++ tcp->flags &= ~TCB_WAITEXECVE; ++ return 0; ++ } ++ ++ + if (regs.ARM_cpsr & 0x20) { + /* + * Get the Thumb-mode system call number diff --git a/patches/strace/4.5.19/120-fix-disabled-largefile-syscalls.patch b/patches/strace/4.5.19/120-fix-disabled-largefile-syscalls.patch new file mode 100644 index 0000000..a555fc2 --- /dev/null +++ b/patches/strace/4.5.19/120-fix-disabled-largefile-syscalls.patch @@ -0,0 +1,22 @@ +diff -durN strace-4.5.19.orig/syscall.c strace-4.5.19/syscall.c +--- strace-4.5.19.orig/syscall.c 2009-10-28 18:47:18.000000000 +0100 ++++ strace-4.5.19/syscall.c 2009-10-28 18:47:18.000000000 +0100 +@@ -110,6 +110,18 @@ + #define TP TRACE_PROCESS + #define TS TRACE_SIGNAL + ++#ifndef HAVE_STATFS64 ++/* ++ * Ugly hacks for systems that do not have LFS ++ */ ++ ++#define sys_truncate64 sys_truncate ++#define sys_ftruncate64 sys_ftruncate ++#define sys_getdents64 sys_getdents ++#define sys_statfs64 sys_statfs ++#define sys_fstatfs64 sys_fstatfs ++#endif ++ + static const struct sysent sysent0[] = { + #include "syscallent.h" + }; diff --git a/patches/strace/4.5.19/130-statfs64-check.patch b/patches/strace/4.5.19/130-statfs64-check.patch new file mode 100644 index 0000000..0959bdd --- /dev/null +++ b/patches/strace/4.5.19/130-statfs64-check.patch @@ -0,0 +1,53 @@ +diff -durN strace-4.5.19.orig/acinclude.m4 strace-4.5.19/acinclude.m4 +--- strace-4.5.19.orig/acinclude.m4 2004-04-14 04:45:53.000000000 +0200 ++++ strace-4.5.19/acinclude.m4 2009-10-28 18:47:18.000000000 +0100 +@@ -210,6 +210,26 @@ + fi + ]) + ++dnl ### A macro to determine whether statfs64 is defined. ++AC_DEFUN([AC_STATFS64], ++[AC_MSG_CHECKING(for statfs64 in sys/(statfs|vfs).h) ++AC_CACHE_VAL(ac_cv_type_statfs64, ++[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef LINUX ++#include ++#include ++#else ++#include ++#endif]], [[struct statfs64 st;]])],[ac_cv_type_statfs64=yes],[ac_cv_type_statfs64=no])]) ++AC_MSG_RESULT($ac_cv_type_statfs64) ++if test "$ac_cv_type_statfs64" = yes ++then ++ AC_DEFINE([HAVE_STATFS64], 1, ++[Define if statfs64 is available in sys/statfs.h or sys/vfs.h.]) ++fi ++]) ++ ++ ++ + dnl ### A macro to determine if off_t is a long long + AC_DEFUN([AC_OFF_T_IS_LONG_LONG], + [AC_MSG_CHECKING(for long long off_t) +diff -durN strace-4.5.19.orig/configure.ac strace-4.5.19/configure.ac +--- strace-4.5.19.orig/configure.ac 2009-10-12 21:54:43.000000000 +0200 ++++ strace-4.5.19/configure.ac 2009-10-28 18:47:18.000000000 +0100 +@@ -187,6 +187,7 @@ + struct stat.st_level, + struct stat.st_rdev]) + AC_STAT64 ++AC_STATFS64 + + AC_TYPE_SIGNAL + AC_TYPE_UID_T +diff -durN strace-4.5.19.orig/file.c strace-4.5.19/file.c +--- strace-4.5.19.orig/file.c 2009-10-21 15:44:04.000000000 +0200 ++++ strace-4.5.19/file.c 2009-10-28 18:47:18.000000000 +0100 +@@ -1688,7 +1688,7 @@ + return 0; + } + +-#ifdef LINUX ++#ifdef HAVE_STATFS64 + static void + printstatfs64(struct tcb *tcp, long addr) + { diff --git a/patches/strace/4.5.19/140-undef-CTL_PROC.patch b/patches/strace/4.5.19/140-undef-CTL_PROC.patch new file mode 100644 index 0000000..8284335 --- /dev/null +++ b/patches/strace/4.5.19/140-undef-CTL_PROC.patch @@ -0,0 +1,13 @@ +diff -durN strace-4.5.19.orig/system.c strace-4.5.19/system.c +--- strace-4.5.19.orig/system.c 2009-06-01 11:59:11.000000000 +0200 ++++ strace-4.5.19/system.c 2009-10-28 18:47:18.000000000 +0100 +@@ -1654,7 +1654,9 @@ + { CTL_KERN, "CTL_KERN" }, + { CTL_VM, "CTL_VM" }, + { CTL_NET, "CTL_NET" }, ++#ifdef CTL_PROC + { CTL_PROC, "CTL_PROC" }, ++#endif + { CTL_FS, "CTL_FS" }, + { CTL_DEBUG, "CTL_DEBUG" }, + { CTL_DEV, "CTL_DEV" }, diff --git a/patches/strace/4.5.19/150-undef-syscall.patch b/patches/strace/4.5.19/150-undef-syscall.patch new file mode 100644 index 0000000..7d65e1d --- /dev/null +++ b/patches/strace/4.5.19/150-undef-syscall.patch @@ -0,0 +1,42 @@ +diff -durN strace-4.5.19.orig/linux/syscallent.h strace-4.5.19/linux/syscallent.h +--- strace-4.5.19.orig/linux/syscallent.h 2009-09-01 21:53:29.000000000 +0200 ++++ strace-4.5.19/linux/syscallent.h 2009-10-28 18:47:18.000000000 +0100 +@@ -130,7 +130,11 @@ + { 2, TF, sys_statfs, "statfs" }, /* 99 */ + { 2, TD, sys_fstatfs, "fstatfs" }, /* 100 */ + { 3, 0, sys_ioperm, "ioperm" }, /* 101 */ +- { 2, TD, sys_socketcall, "socketcall", SYS_socketcall }, /* 102 */ ++ { 2, TD, sys_socketcall, "socketcall" ++#ifdef __NR_socketcall ++ , SYS_socketcall ++#endif ++ }, /* 102 */ + { 3, 0, sys_syslog, "syslog" }, /* 103 */ + { 3, 0, sys_setitimer, "setitimer" }, /* 104 */ + { 2, 0, sys_getitimer, "getitimer" }, /* 105 */ +@@ -145,7 +149,11 @@ + { 4, TP, sys_wait4, "wait4", SYS_wait4 }, /* 114 */ + { 1, 0, sys_swapoff, "swapoff" }, /* 115 */ + { 1, 0, sys_sysinfo, "sysinfo" }, /* 116 */ +- { 6, 0, sys_ipc, "ipc", SYS_ipc }, /* 117 */ ++ { 6, 0, sys_ipc, "ipc" ++#ifdef __NR_ipc ++ , SYS_ipc ++#endif ++ }, /* 117 */ + { 1, TD, sys_fsync, "fsync" }, /* 118 */ + { 1, TS, sys_sigreturn, "sigreturn" }, /* 119 */ + { 5, TP, sys_clone, "clone", SYS_clone }, /* 120 */ +@@ -282,7 +290,11 @@ + { 3, 0, sys_io_cancel, "io_cancel" }, /* 249 */ + { 5, 0, sys_fadvise64, "fadvise64" }, /* 250 */ + { 5, 0, printargs, "SYS_251" }, /* 251 */ +- { 1, TP, sys_exit, "exit_group", __NR_exit_group }, /* 252 */ ++ { 1, TP, sys_exit, "exit_group" ++#ifdef __NR_exit_group ++ , __NR_exit_group ++#endif ++ }, /* 252 */ + { 4, 0, printargs, "lookup_dcookie"}, /* 253 */ + { 1, 0, sys_epoll_create, "epoll_create" }, /* 254 */ + { 4, TD, sys_epoll_ctl, "epoll_ctl" }, /* 255 */ -- cgit v0.10.2-6-g49f6