From c9b84c72c9759cf2450dcd7884c4ddcf7b6f11ab Mon Sep 17 00:00:00 2001 From: Philipp Zabel Date: Wed, 26 Jul 2006 11:13:46 +0000 Subject: strace-4.5.{12,14}: fix the 'unknown syscall trap' error for EABI --- .../strace/strace/strace-fix-arm-bad-syscall.patch | 18 ++++++++++++++++++ packages/strace/strace_4.5.12.bb | 5 +++-- packages/strace/strace_4.5.14.bb | 5 +++-- 3 files changed, 24 insertions(+), 4 deletions(-) create mode 100644 packages/strace/strace/strace-fix-arm-bad-syscall.patch diff --git a/packages/strace/strace/strace-fix-arm-bad-syscall.patch b/packages/strace/strace/strace-fix-arm-bad-syscall.patch new file mode 100644 index 0000000000..d7d7426b74 --- /dev/null +++ b/packages/strace/strace/strace-fix-arm-bad-syscall.patch @@ -0,0 +1,18 @@ +--- strace-4.5.12-orig/syscall.c 2005-06-08 21:45:28.000000000 +0100 ++++ strace-4.5.12/syscall.c 2005-10-25 19:26:39.000000000 +0100 +@@ -1013,6 +1013,15 @@ struct tcb *tcp; + /* + * 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/packages/strace/strace_4.5.12.bb b/packages/strace/strace_4.5.12.bb index 95a5b7fa9b..3a15563100 100644 --- a/packages/strace/strace_4.5.12.bb +++ b/packages/strace/strace_4.5.12.bb @@ -1,12 +1,13 @@ LICENSE = "GPL" SECTION = "console/utils" -PR = "r0" +PR = "r1" DESCRIPTION = "strace is a system call tracing tool." SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2 \ file://arm-syscallent.patch;patch=1 \ - file://quota.patch;patch=1" + file://quota.patch;patch=1 \ + file://strace-fix-arm-bad-syscall.patch;patch=1" inherit autotools diff --git a/packages/strace/strace_4.5.14.bb b/packages/strace/strace_4.5.14.bb index b35a267d14..16b0abfa1f 100644 --- a/packages/strace/strace_4.5.14.bb +++ b/packages/strace/strace_4.5.14.bb @@ -1,13 +1,14 @@ LICENSE = "GPL" SECTION = "console/utils" -PR = "r2" +PR = "r3" DESCRIPTION = "strace is a system call tracing tool." SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2 \ file://arm-eabi.patch;patch=1 \ file://sh-arch-update.patch;patch=1 \ - file://sh-syscall-update.patch;patch=1" + file://sh-syscall-update.patch;patch=1 \ + file://strace-fix-arm-bad-syscall.patch;patch=1" inherit autotools -- cgit v1.2.3