Add strace 4.5.18:
author"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Mon Oct 20 20:09:14 2008 +0000 (2008-10-20)
changeset 951fc4f1b630dd2
parent 950 82209e5c862a
child 952 4db000267992
Add strace 4.5.18:
- propagated the 4.5.16 patch set
- EXPERIMENTAL, as it does not build on at least ARM

/trunk/patches/strace/4.5.18/160-undef-syscall.patch | 22 0 22 0 ----------------------
/trunk/config/debug/strace.in | 6 6 0 0 ++++++
2 files changed, 6 insertions(+), 22 deletions(-)
config/debug/strace.in
patches/strace/4.5.18/100-autoreconf.patch
patches/strace/4.5.18/110-dont-use-REG_SYSCALL-for-sh.patch
patches/strace/4.5.18/120-fix-arm-bad-syscall.patch
patches/strace/4.5.18/130-fix-disabled-largefile-syscalls.patch
patches/strace/4.5.18/140-statfs64-check.patch
patches/strace/4.5.18/150-undef-CTL_PROC.patch
patches/strace/4.5.18/160-undef-syscall.patch
     1.1 --- a/config/debug/strace.in	Mon Oct 20 17:46:43 2008 +0000
     1.2 +++ b/config/debug/strace.in	Mon Oct 20 20:09:14 2008 +0000
     1.3 @@ -24,6 +24,11 @@
     1.4      bool
     1.5      prompt "4.5.16"
     1.6  
     1.7 +config STRACE_V_4_5_18
     1.8 +    bool
     1.9 +    prompt "4.5.18 (EXPERIMENTAL)"
    1.10 +    depends on EXPERIMENTAL
    1.11 +
    1.12  # CT_INSERT_VERSION_ABOVE
    1.13  # Don't remove above line!
    1.14  endchoice
    1.15 @@ -34,5 +39,6 @@
    1.16      default "4.5.14" if STRACE_V_4_5_14
    1.17      default "4.5.15" if STRACE_V_4_5_15
    1.18      default "4.5.16" if STRACE_V_4_5_16
    1.19 +    default "4.5.18" if STRACE_V_4_5_18
    1.20  # CT_INSERT_VERSION_STRING_ABOVE
    1.21  # # Don't remove above line!
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/patches/strace/4.5.18/100-autoreconf.patch	Mon Oct 20 20:09:14 2008 +0000
     2.3 @@ -0,0 +1,77 @@
     2.4 +diff -dur strace-4.5.16.orig/configure strace-4.5.16/configure
     2.5 +--- strace-4.5.16.orig/configure	2007-01-11 23:23:33.000000000 +0100
     2.6 ++++ strace-4.5.16/configure	2007-07-14 19:18:43.000000000 +0200
     2.7 +@@ -5808,6 +5777,73 @@
     2.8 +
     2.9 + fi
    2.10 +
    2.11 ++echo "$as_me:$LINENO: checking for statfs64 in sys/(statfs|vfs).h" >&5
    2.12 ++echo $ECHO_N "checking for statfs64 in sys/(statfs|vfs).h... $ECHO_C" >&6
    2.13 ++if test "${ac_cv_type_statfs64+set}" = set; then
    2.14 ++  echo $ECHO_N "(cached) $ECHO_C" >&6
    2.15 ++else
    2.16 ++  cat >conftest.$ac_ext <<_ACEOF
    2.17 ++/* confdefs.h.  */
    2.18 ++_ACEOF
    2.19 ++cat confdefs.h >>conftest.$ac_ext
    2.20 ++cat >>conftest.$ac_ext <<_ACEOF
    2.21 ++/* end confdefs.h.  */
    2.22 ++#ifdef LINUX
    2.23 ++#include <linux/types.h>
    2.24 ++#include <sys/statfs.h>
    2.25 ++#else
    2.26 ++#include <sys/vfs.h>
    2.27 ++#endif
    2.28 ++int
    2.29 ++main ()
    2.30 ++{
    2.31 ++struct statfs64 st;
    2.32 ++  ;
    2.33 ++  return 0;
    2.34 ++}
    2.35 ++_ACEOF
    2.36 ++rm -f conftest.$ac_objext
    2.37 ++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
    2.38 ++  (eval $ac_compile) 2>conftest.er1
    2.39 ++  ac_status=$?
    2.40 ++  grep -v '^ *+' conftest.er1 >conftest.err
    2.41 ++  rm -f conftest.er1
    2.42 ++  cat conftest.err >&5
    2.43 ++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    2.44 ++  (exit $ac_status); } &&
    2.45 ++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
    2.46 ++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
    2.47 ++  (eval $ac_try) 2>&5
    2.48 ++  ac_status=$?
    2.49 ++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    2.50 ++  (exit $ac_status); }; } &&
    2.51 ++	 { ac_try='test -s conftest.$ac_objext'
    2.52 ++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
    2.53 ++  (eval $ac_try) 2>&5
    2.54 ++  ac_status=$?
    2.55 ++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
    2.56 ++  (exit $ac_status); }; }; then
    2.57 ++  ac_cv_type_statfs64=yes
    2.58 ++else
    2.59 ++  echo "$as_me: failed program was:" >&5
    2.60 ++sed 's/^/| /' conftest.$ac_ext >&5
    2.61 ++
    2.62 ++ac_cv_type_statfs64=no
    2.63 ++fi
    2.64 ++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
    2.65 ++fi
    2.66 ++
    2.67 ++echo "$as_me:$LINENO: result: $ac_cv_type_statfs64" >&5
    2.68 ++echo "${ECHO_T}$ac_cv_type_statfs64" >&6
    2.69 ++if test "$ac_cv_type_statfs64" = yes
    2.70 ++then
    2.71 ++
    2.72 ++cat >>confdefs.h <<\_ACEOF
    2.73 ++#define HAVE_STATFS64 1
    2.74 ++_ACEOF
    2.75 ++
    2.76 ++fi
    2.77 ++
    2.78 +
    2.79 + { echo "$as_me:$LINENO: checking return type of signal handlers" >&5
    2.80 + echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; }
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/patches/strace/4.5.18/110-dont-use-REG_SYSCALL-for-sh.patch	Mon Oct 20 20:09:14 2008 +0000
     3.3 @@ -0,0 +1,11 @@
     3.4 +diff -dur strace-4.5.16.orig/process.c strace-4.5.16/process.c
     3.5 +--- strace-4.5.16.orig/process.c	2007-01-11 23:08:38.000000000 +0100
     3.6 ++++ strace-4.5.16/process.c	2007-07-14 19:19:58.000000000 +0200
     3.7 +@@ -2685,7 +2685,6 @@
     3.8 +        { 4*REG_GBR,            "4*REG_GBR"                             },
     3.9 +        { 4*REG_MACH,           "4*REG_MACH"                            },
    3.10 +        { 4*REG_MACL,           "4*REG_MACL"                            },
    3.11 +-       { 4*REG_SYSCALL,        "4*REG_SYSCALL"                         },
    3.12 +        { 4*REG_FPUL,           "4*REG_FPUL"                            },
    3.13 +        { 4*REG_FPREG0,         "4*REG_FPREG0"                          },
    3.14 +        { 4*(REG_FPREG0+1),     "4*REG_FPREG1"                          },
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/patches/strace/4.5.18/120-fix-arm-bad-syscall.patch	Mon Oct 20 20:09:14 2008 +0000
     4.3 @@ -0,0 +1,19 @@
     4.4 +diff -dur strace-4.5.16.orig/syscall.c strace-4.5.16/syscall.c
     4.5 +--- strace-4.5.16.orig/syscall.c	2006-12-21 23:13:33.000000000 +0100
     4.6 ++++ strace-4.5.16/syscall.c	2007-07-14 19:21:44.000000000 +0200
     4.7 +@@ -1045,6 +1045,15 @@
     4.8 + 		/*
     4.9 + 		 * Note: we only deal with only 32-bit CPUs here.
    4.10 + 		 */
    4.11 ++
    4.12 ++		if (!(tcp->flags & TCB_INSYSCALL) &&
    4.13 ++		    (tcp->flags & TCB_WAITEXECVE)) {
    4.14 ++			/* caught a fake syscall from the execve's exit */
    4.15 ++			tcp->flags &= ~TCB_WAITEXECVE;
    4.16 ++			return 0;
    4.17 ++		}
    4.18 ++
    4.19 ++
    4.20 + 		if (regs.ARM_cpsr & 0x20) {
    4.21 + 			/*
    4.22 + 			 * Get the Thumb-mode system call number
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/patches/strace/4.5.18/130-fix-disabled-largefile-syscalls.patch	Mon Oct 20 20:09:14 2008 +0000
     5.3 @@ -0,0 +1,22 @@
     5.4 +diff -dur strace-4.5.16.orig/syscall.c strace-4.5.16/syscall.c
     5.5 +--- strace-4.5.16.orig/syscall.c	2007-07-14 19:21:44.000000000 +0200
     5.6 ++++ strace-4.5.16/syscall.c	2007-07-14 19:22:49.000000000 +0200
     5.7 +@@ -125,6 +125,18 @@
     5.8 + #define TP TRACE_PROCESS
     5.9 + #define TS TRACE_SIGNAL
    5.10 +
    5.11 ++#ifndef HAVE_STATFS64
    5.12 ++/*
    5.13 ++ * Ugly hacks for systems that do not have LFS
    5.14 ++ */
    5.15 ++
    5.16 ++#define sys_truncate64  sys_truncate
    5.17 ++#define sys_ftruncate64 sys_ftruncate
    5.18 ++#define sys_getdents64  sys_getdents
    5.19 ++#define sys_statfs64    sys_statfs
    5.20 ++#define sys_fstatfs64   sys_fstatfs
    5.21 ++#endif
    5.22 ++
    5.23 + static const struct sysent sysent0[] = {
    5.24 + #include "syscallent.h"
    5.25 + };
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/patches/strace/4.5.18/140-statfs64-check.patch	Mon Oct 20 20:09:14 2008 +0000
     6.3 @@ -0,0 +1,53 @@
     6.4 +diff -dur strace-4.5.16.orig/acinclude.m4 strace-4.5.16/acinclude.m4
     6.5 +--- strace-4.5.16.orig/acinclude.m4	2004-04-14 04:21:01.000000000 +0200
     6.6 ++++ strace-4.5.16/acinclude.m4	2007-07-14 19:25:25.000000000 +0200
     6.7 +@@ -210,6 +210,26 @@
     6.8 + fi
     6.9 + ])
    6.10 +
    6.11 ++dnl ### A macro to determine whether statfs64 is defined.
    6.12 ++AC_DEFUN([AC_STATFS64],
    6.13 ++[AC_MSG_CHECKING(for statfs64 in sys/(statfs|vfs).h)
    6.14 ++AC_CACHE_VAL(ac_cv_type_statfs64,
    6.15 ++[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#ifdef LINUX
    6.16 ++#include <linux/types.h>
    6.17 ++#include <sys/statfs.h>
    6.18 ++#else
    6.19 ++#include <sys/vfs.h>
    6.20 ++#endif]], [[struct statfs64 st;]])],[ac_cv_type_statfs64=yes],[ac_cv_type_statfs64=no])])
    6.21 ++AC_MSG_RESULT($ac_cv_type_statfs64)
    6.22 ++if test "$ac_cv_type_statfs64" = yes
    6.23 ++then
    6.24 ++	AC_DEFINE([HAVE_STATFS64], 1,
    6.25 ++[Define if statfs64 is available in sys/statfs.h or sys/vfs.h.])
    6.26 ++fi
    6.27 ++])
    6.28 ++
    6.29 ++
    6.30 ++
    6.31 + dnl ### A macro to determine if off_t is a long long
    6.32 + AC_DEFUN([AC_OFF_T_IS_LONG_LONG],
    6.33 + [AC_MSG_CHECKING(for long long off_t)
    6.34 +diff -dur strace-4.5.16.orig/configure.ac strace-4.5.16/configure.ac
    6.35 +--- strace-4.5.16.orig/configure.ac	2007-01-11 12:37:55.000000000 +0100
    6.36 ++++ strace-4.5.16/configure.ac	2007-07-14 19:25:25.000000000 +0200
    6.37 +@@ -169,6 +169,7 @@
    6.38 + 		  struct stat.st_level,
    6.39 + 		  struct stat.st_rdev])
    6.40 + AC_STAT64
    6.41 ++AC_STATFS64
    6.42 +
    6.43 + AC_TYPE_SIGNAL
    6.44 + AC_TYPE_UID_T
    6.45 +diff -dur strace-4.5.16.orig/file.c strace-4.5.16/file.c
    6.46 +--- strace-4.5.16.orig/file.c	2007-01-15 21:25:52.000000000 +0100
    6.47 ++++ strace-4.5.16/file.c	2007-07-14 19:25:25.000000000 +0200
    6.48 +@@ -1636,7 +1636,7 @@
    6.49 + 	return 0;
    6.50 + }
    6.51 +
    6.52 +-#ifdef LINUX
    6.53 ++#ifdef HAVE_STATFS64
    6.54 + static void
    6.55 + printstatfs64(tcp, addr)
    6.56 + struct tcb *tcp;
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/patches/strace/4.5.18/150-undef-CTL_PROC.patch	Mon Oct 20 20:09:14 2008 +0000
     7.3 @@ -0,0 +1,13 @@
     7.4 +diff -dur strace-4.5.16.orig/system.c strace-4.5.16/system.c
     7.5 +--- strace-4.5.16.orig/system.c	2007-01-17 00:22:36.000000000 +0100
     7.6 ++++ strace-4.5.16/system.c	2007-07-14 19:28:41.000000000 +0200
     7.7 +@@ -1612,7 +1612,9 @@
     7.8 + 	{ CTL_KERN, "CTL_KERN" },
     7.9 + 	{ CTL_VM, "CTL_VM" },
    7.10 + 	{ CTL_NET, "CTL_NET" },
    7.11 ++#ifdef CTL_PROC
    7.12 + 	{ CTL_PROC, "CTL_PROC" },
    7.13 ++#endif
    7.14 + 	{ CTL_FS, "CTL_FS" },
    7.15 + 	{ CTL_DEBUG, "CTL_DEBUG" },
    7.16 + 	{ CTL_DEV, "CTL_DEV" },
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/patches/strace/4.5.18/160-undef-syscall.patch	Mon Oct 20 20:09:14 2008 +0000
     8.3 @@ -0,0 +1,42 @@
     8.4 +diff -dur strace-4.5.16.orig/linux/syscallent.h strace-4.5.16/linux/syscallent.h
     8.5 +--- strace-4.5.16.orig/linux/syscallent.h	2006-10-16 03:17:52.000000000 +0200
     8.6 ++++ strace-4.5.16/linux/syscallent.h	2007-07-14 19:30:16.000000000 +0200
     8.7 +@@ -130,7 +130,11 @@
     8.8 + 	{ 2,	TF,	sys_statfs,		"statfs"	}, /* 99 */
     8.9 + 	{ 2,	TD,	sys_fstatfs,		"fstatfs"	}, /* 100 */
    8.10 + 	{ 3,	0,	sys_ioperm,		"ioperm"	}, /* 101 */
    8.11 +-	{ 2,	TD,	sys_socketcall,		"socketcall", SYS_socketcall }, /* 102 */
    8.12 ++	{ 2,	TD,	sys_socketcall,		"socketcall"
    8.13 ++#ifdef __NR_socketcall
    8.14 ++	    , SYS_socketcall
    8.15 ++#endif
    8.16 ++								}, /* 102 */
    8.17 + 	{ 3,	0,	sys_syslog,		"syslog"	}, /* 103 */
    8.18 + 	{ 3,	0,	sys_setitimer,		"setitimer"	}, /* 104 */
    8.19 + 	{ 2,	0,	sys_getitimer,		"getitimer"	}, /* 105 */
    8.20 +@@ -145,7 +149,11 @@
    8.21 + 	{ 4,	TP,	sys_wait4,		"wait4", SYS_wait4 }, /* 114 */
    8.22 + 	{ 1,	0,	sys_swapoff,		"swapoff"	}, /* 115 */
    8.23 + 	{ 1,	0,	sys_sysinfo,		"sysinfo"	}, /* 116 */
    8.24 +-	{ 6,	0,	sys_ipc,		"ipc", SYS_ipc }, /* 117 */
    8.25 ++	{ 6,	0,	sys_ipc,		"ipc"
    8.26 ++#ifdef __NR_ipc
    8.27 ++	    , SYS_ipc
    8.28 ++#endif
    8.29 ++								}, /* 117 */
    8.30 + 	{ 1,	TD,	sys_fsync,		"fsync"		}, /* 118 */
    8.31 + 	{ 1,	TS,	sys_sigreturn,		"sigreturn"	}, /* 119 */
    8.32 + 	{ 5,	TP,	sys_clone,		"clone", SYS_clone }, /* 120 */
    8.33 +@@ -282,7 +290,11 @@
    8.34 + 	{ 3,	0,	sys_io_cancel,		"io_cancel"	}, /* 249 */
    8.35 + 	{ 5,	0,	sys_fadvise64,		"fadvise64"	}, /* 250 */
    8.36 + 	{ 5,	0,	printargs,		"SYS_251"	}, /* 251 */
    8.37 +-	{ 1,	TP,	sys_exit,		"exit_group", __NR_exit_group }, /* 252 */
    8.38 ++	{ 1,	TP,	sys_exit,		"exit_group"
    8.39 ++#ifdef __NR_exit_group
    8.40 ++	    , __NR_exit_group
    8.41 ++#endif
    8.42 ++								}, /* 252 */
    8.43 + 	{ 4,	0,	printargs,		"lookup_dcookie"}, /* 253 */
    8.44 + 	{ 1,	0,	sys_epoll_create,	"epoll_create"	}, /* 254 */
    8.45 + 	{ 4,	TD,	sys_epoll_ctl,		"epoll_ctl"	}, /* 255 */