diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2009-12-04 18:10:24 +0100 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2009-12-04 18:10:24 +0100 |
commit | b047da059a1042a27ba68b1bdc50dd187bd362f4 (patch) | |
tree | 5529bdac03674fab07bb4335fc5ce4e5654c7497 /package/strace/patches/patch-syscall_c | |
parent | 5d93cc6de511d5330d0d0c7a0ebae8e6c9638e3d (diff) |
update kernel to 2.6.32
- update some applications
asterisk, curl, strace, radvd, rpm
- fix allconfig
- /dev for full build seems to need more than 64k
Diffstat (limited to 'package/strace/patches/patch-syscall_c')
-rw-r--r-- | package/strace/patches/patch-syscall_c | 81 |
1 files changed, 0 insertions, 81 deletions
diff --git a/package/strace/patches/patch-syscall_c b/package/strace/patches/patch-syscall_c deleted file mode 100644 index 700d9be09..000000000 --- a/package/strace/patches/patch-syscall_c +++ /dev/null @@ -1,81 +0,0 @@ -$Id: update-patches 24 2008-08-31 14:56:13Z wbx $ ---- strace-4.5.18.orig/syscall.c 2008-08-25 05:16:26.000000000 +0200 -+++ strace-4.5.18/syscall.c 2009-01-02 21:24:05.514097112 +0100 -@@ -772,6 +772,8 @@ internal_syscall(struct tcb *tcp) - static long r9; - #elif defined(X86_64) - static long rax; -+#elif defined(CRISV10) || defined(CRISV32) -+ static long r10; - #endif - #endif /* LINUX */ - #ifdef FREEBSD -@@ -1273,7 +1275,10 @@ struct tcb *tcp; - return 0; - } - } --#endif /* SH64 */ -+#elif defined(CRISV10) || defined(CRISV32) -+ if (upeek(pid, 4*PT_R9, &scno) < 0) -+ return -1; -+#endif /* CRISV10/CRISV32 */ - #endif /* LINUX */ - #ifdef SUNOS4 - if (upeek(pid, uoff(u_arg[7]), &scno) < 0) -@@ -1468,6 +1473,14 @@ struct tcb *tcp; - fprintf(stderr, "stray syscall exit: r8 = %ld\n", r8); - return 0; - } -+#elif defined(CRISV10) || defined(CRISV32) -+ if (upeek(pid, 4*PT_R10, &r10) < 0) -+ return -1; -+ if (r10 != -ENOSYS && !(tcp->flags & TCB_INSYSCALL)) { -+ if (debug) -+ fprintf(stderr, "stray syscall exit: r10 = %ld\n", r10); -+ return 0; -+ } - #endif - #endif /* LINUX */ - return 1; -@@ -1649,6 +1662,17 @@ struct tcb *tcp; - tcp->u_rval = r9; - u_error = 0; - } -+#else -+#if defined(CRISV10) || defined(CRISV32) -+ if (r10 && (unsigned) -r10 < nerrnos) { -+ tcp->u_rval = -1; -+ u_error = -r10; -+ } -+ else { -+ tcp->u_rval = r10; -+ u_error = 0; -+ } -+#endif /* CRISV10/CRISV32 */ - #endif /* SH64 */ - #endif /* SH */ - #endif /* HPPA */ -@@ -2169,6 +2193,23 @@ struct tcb *tcp; - return -1; - } - } -+#elif defined(CRISV10) || defined(CRISV32) -+ { -+ int i; -+ static const int crisregs[] = { -+ 4*PT_ORIG_R10, 4*PT_R11, 4*PT_R12, -+ 4*PT_R13, 4*PT_MOF, 4*PT_SRP -+ }; -+ -+ if (tcp->scno >= 0 && tcp->scno < nsyscalls) -+ tcp->u_nargs = sysent[tcp->scno].nargs; -+ else -+ tcp->u_nargs = 0; -+ for (i = 0; i < tcp->u_nargs; i++) { -+ if (upeek(pid, crisregs[i], &tcp->u_arg[i]) < 0) -+ return -1; -+ } -+ } - #else /* Other architecture (like i386) (32bits specific) */ - { - int i; |