[SSI] openssi/kernel/cluster/ssi/vproc dvp_pvpops.c,1.38,1.39

Roger Tsang <[email protected]>
Newsgroups gmane.linux.cluster.ssic.cvs
Message-ID <[email protected]>
Update of /cvsroot/ssic-linux/openssi/kernel/cluster/ssi/vproc
In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv14118/cluster/ssi/vproc

Modified Files:
      Tag: OPENSSI-FC
	dvp_pvpops.c 
Log Message:
CFS:
- Allocate file_lock structure from stack in cfs_proc_set/getlock_0(), cfs_rb_dolocks().
- Fix possible busy spin forever in cfs_rb_dolocks(); need error handling.
- Optimize away early malloc in svrtok_lookup(). (#ifdef RCU_CFSTOK_TABLE)

IPC:
- Regression:
  - Partially initialized rmtunix_socket_info structure. (#ifdef RMTUNIX_SOCK_INFO_CACHE)

VPROC:
- Regression:
  - pvpop_reclaim_child() livelock in __ptrace_unlink path. (#ifdef VPROC_RW_LOCK)

 cluster/ssi/cfs/cfs_ipcshm.c     |    4 -
 cluster/ssi/cfs/cfsproc.c        |   90 +++++++++++++++++----------------------
 cluster/ssi/cfs/svrcfs.c         |   24 +++-------
 cluster/ssi/ipc/rmtunix.c        |    8 +--
 cluster/ssi/vproc/dvp_pvpops.c   |   10 ++--
 include/cluster/ssi/ipc/unixnm.h |    9 ++-
 include/cluster/ssi/unix.h       |    6 +-
 7 files changed, 69 insertions(+), 82 deletions(-)


Index: dvp_pvpops.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/cluster/ssi/vproc/dvp_pvpops.c,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -d -r1.38 -r1.39
--- dvp_pvpops.c	3 Feb 2009 06:18:13 -0000	1.38
+++ dvp_pvpops.c	7 Feb 2009 04:19:43 -0000	1.39
@@ -1210,7 +1210,8 @@
 		goto skip_remove;
 
 	/* We could be remote so check even when client says islocked */
-	pp_held = islocked && VPROC_LOCK_EXCL_HELD(vi);
+	/* SSI_XXX: get rid of unused arg islocked */
+	pp_held = VPROC_LOCK_EXCL_HELD(vi);
 	if (!pp_held) {
 #endif
 		if (!(TRY_VPROC_LOCK_EXCL(vi, "pvpop_reclaim_child"))) {
@@ -1245,7 +1246,9 @@
 		VPROC_UNLOCK_EXCL(vi, "pvpop_reclaim_child");
 
 	VPROC_RELE(vi, "pvpop_reclaim_child(parent on child node");
-#else
+
+skip_remove:
+#else /* ! VPROC_RW_LOCK */
 	 if (!rforkpt)
 		error = PVPOP_RMV_CHILD_FROM_PARENT(vi, v, TRUE);
 
@@ -1269,9 +1272,6 @@
 		VPROC_RELE(vi, "pvpop_reclaim_child(parent on child node");
 #endif /* !VPROC_RW_LOCK */
 
-#ifdef VPROC_RW_LOCK
-skip_remove:
-#endif
 	/*
 	 * Reassign the child from INIT to the new parent.
 	 */


------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.