patches/strace/4.5.17/120-fix-arm-bad-syscall.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed May 18 23:00:46 2011 +0200 (2011-05-18)
changeset 2467 200836977ce6
parent 747 d3e603e7c17c
permissions -rw-r--r--
config: rename variables that are arrays

Make it explicit that a variable is an array bu the name of the variable.
It will be used later when .config gets munged to allow both multiple
arguments and arguments with spaces at the same time to be passed from the
configuration down to the build scripts.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@974
     1
Original patch from gentoo: ../../dev/crosstool-NG/ct-ng.trunk/patches/strace/4.5.17/120-fix-arm-bad-syscall.patch
yann@974
     2
-= BEGIN original header =-
yann@428
     3
diff -dur strace-4.5.16.orig/syscall.c strace-4.5.16/syscall.c
yann@974
     4
-= END original header =-
yann@974
     5
diff -durN strace-4.5.17.orig/syscall.c strace-4.5.17/syscall.c
yann@974
     6
--- strace-4.5.17.orig/syscall.c	2008-05-28 01:18:29.000000000 +0200
yann@974
     7
+++ strace-4.5.17/syscall.c	2008-10-24 21:30:13.000000000 +0200
yann@974
     8
@@ -1016,6 +1016,15 @@
yann@428
     9
 		/*
yann@428
    10
 		 * Note: we only deal with only 32-bit CPUs here.
yann@428
    11
 		 */
yann@428
    12
+
yann@428
    13
+		if (!(tcp->flags & TCB_INSYSCALL) &&
yann@428
    14
+		    (tcp->flags & TCB_WAITEXECVE)) {
yann@428
    15
+			/* caught a fake syscall from the execve's exit */
yann@428
    16
+			tcp->flags &= ~TCB_WAITEXECVE;
yann@428
    17
+			return 0;
yann@428
    18
+		}
yann@428
    19
+
yann@428
    20
+
yann@428
    21
 		if (regs.ARM_cpsr & 0x20) {
yann@428
    22
 			/*
yann@428
    23
 			 * Get the Thumb-mode system call number