patches/strace/4.5.17/120-fix-arm-bad-syscall.patch
author "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
Mon Apr 16 15:25:36 2012 +0200 (2012-04-16)
changeset 2941 13e40098fffc
parent 747 d3e603e7c17c
permissions -rw-r--r--
cc/gcc: update Linaro GCC revisions to 2012.04

Update Linaro GCC with the latest available revisions.

The 4.7 revision is also released, but the infrastructure is not yet ready for
it in CT-NG.

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