[SSI] openssi/strace process.c, 1.1.15.2, 1.1.15.2.2.1 util.c, 1.1.15.2, 1.1.15.2.2.1

Roger Tsang <[email protected]> Tue, 14 Sep 2010 03:24:02 +0000
Newsgroups gmane.linux.cluster.ssic.cvs
Message-ID <[email protected]>
Update of /cvsroot/ssic-linux/openssi/strace
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv20261

Modified Files:
      Tag: OPENSSI-CENTOS
	process.c util.c 
Log Message:
SSI modifications to strace-4.5.16-1.el4_8.11


Index: util.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/strace/Attic/util.c,v
retrieving revision 1.1.15.2
retrieving revision 1.1.15.2.2.1
diff -u -d -r1.1.15.2 -r1.1.15.2.2.1
--- util.c	14 Sep 2010 03:12:35 -0000	1.1.15.2
+++ util.c	14 Sep 2010 03:24:00 -0000	1.1.15.2.2.1
@@ -34,6 +34,7 @@
  */
 
 #include "defs.h"
+#include "linux/syscall.h"
 
 #include <signal.h>
 #include <sys/syscall.h>
@@ -1590,6 +1591,20 @@
 		tcp->inst[1] = tcp->u_arg[arg1_index];
 		return 0;
 
+#ifdef SYS_rfork
+	case SYS_rfork:
+		/* For OpenSSI pass in CLONE_PTRACE with node number */
+		if (arg_setup (tcp, &state) < 0
+			|| set_arg0 (tcp, &state, 
+				tcp->u_arg[0] | (CLONE_PTRACE << 16))  < 0
+			|| arg_finish_change (tcp, &state) < 0)
+			return -1;
+		tcp->flags |= TCB_BPTSET;
+		tcp->inst[0] = tcp->u_arg[0] | (CLONE_PTRACE << 16);
+		tcp->inst[1] = 0;
+		return 0;
+#endif
+
 	default:
 		fprintf(stderr, "PANIC: setbpt for syscall %ld on %u???\n",
 			tcp->scno, tcp->pid);

Index: process.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/strace/Attic/process.c,v
retrieving revision 1.1.15.2
retrieving revision 1.1.15.2.2.1
diff -u -d -r1.1.15.2 -r1.1.15.2.2.1
--- process.c	14 Sep 2010 03:12:34 -0000	1.1.15.2
+++ process.c	14 Sep 2010 03:24:00 -0000	1.1.15.2.2.1
@@ -629,6 +629,19 @@
 }
 
 int
+sys_rfork(tcp)
+struct tcb *tcp;
+{
+	if (entering(tcp)) {
+		tprintf ("%ld", tcp->u_arg[0]);
+	}
+	else {
+		return RVAL_UDECIMAL;
+	}
+	return 0;
+}
+
+int
 change_syscall(tcp, new)
 struct tcb *tcp;
 int new;
@@ -1772,7 +1785,6 @@
 	return 0;
 }
 
-#if UNIXWARE > 2
 
 int sys_rexecve(tcp)
 struct tcb *tcp;
@@ -1784,7 +1796,6 @@
 	return 0;
 }
 
-#endif
 
 int
 internal_exec(tcp)


------------------------------------------------------------------------------
Start uncovering the many advantages of virtual appliances
and start using them to simplify application deployment and
accelerate your shift to cloud computing.
http://p.sf.net/sfu/novell-sfdev2dev