patches/strace/4.5.19/110-fix-arm-bad-syscall.patch
author Arnaud Lacombe <lacombar@gmail.com>
Tue Aug 03 06:17:51 2010 +0200 (2010-08-03)
changeset 2064 f5ebe8c429dc
permissions -rw-r--r--
libc/uClibc: add uClibc 0.9.30.3

This version has been released a couple of month ago, but it never reached
crosstool-ng tree. This may be linked to the fact that the current 0.9.30.2,
once patched, has nothing much different from 0.9.30.3, released.

I'm not including any patch with this upgrade, on purpose.

Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
yann@1613
     1
diff -durN strace-4.5.19.orig/syscall.c strace-4.5.19/syscall.c
yann@1613
     2
--- strace-4.5.19.orig/syscall.c	2009-10-12 21:54:21.000000000 +0200
yann@1613
     3
+++ strace-4.5.19/syscall.c	2009-10-28 18:47:18.000000000 +0100
yann@1613
     4
@@ -1022,6 +1022,15 @@
yann@1613
     5
 		/*
yann@1613
     6
 		 * Note: we only deal with only 32-bit CPUs here.
yann@1613
     7
 		 */
yann@1613
     8
+
yann@1613
     9
+		if (!(tcp->flags & TCB_INSYSCALL) &&
yann@1613
    10
+		    (tcp->flags & TCB_WAITEXECVE)) {
yann@1613
    11
+			/* caught a fake syscall from the execve's exit */
yann@1613
    12
+			tcp->flags &= ~TCB_WAITEXECVE;
yann@1613
    13
+			return 0;
yann@1613
    14
+		}
yann@1613
    15
+
yann@1613
    16
+
yann@1613
    17
 		if (regs.ARM_cpsr & 0x20) {
yann@1613
    18
 			/*
yann@1613
    19
 			 * Get the Thumb-mode system call number