[SSI] openssi ChangeLog,1.248,1.249

Roger Tsang <[email protected]> Sun, 21 Mar 2010 05:40:39 +0000
Newsgroups gmane.linux.cluster.ssic.cvs
Message-ID <[email protected]>
Update of /cvsroot/ssic-linux/openssi
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv22936

Modified Files:
      Tag: OPENSSI-FC
	ChangeLog 
Log Message:
update


Index: ChangeLog
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/ChangeLog,v
retrieving revision 1.248
retrieving revision 1.249
diff -u -d -r1.248 -r1.249
--- ChangeLog	15 Mar 2010 01:01:51 -0000	1.248
+++ ChangeLog	21 Mar 2010 05:40:37 -0000	1.249
@@ -1,5 +1,78 @@
 2010/??/??	*** Release of OpenSSI 2.0.0rc1 ***
 
+2010/03/21	rogertsang <[email protected]>
+	* CVS Tag: OPENSSI-FC-1-9-6-PRE25
+
+	* IPC (#ifdef IPC_SHM_RACE_FIX):
+	- Fix livelock in do_ssi_shm_noclients() in svr_ripc_shm_cleanup() path
+	  due to deadlock with icssvr_nodedown_svc_wait() in
+	  ipc_shm_nodedown(). In do_ssi_shm_noclients() when
+	  RIPC_SHM_GET_NATTCHS() fails shm_nodelist in shmid_kernel_svr
+	  structure is re-read before retrying. It retries indefinitely. There
+	  is no livelock as long as down nodes are promptly removed from
+	  shm_nodelist, but the down node is not removed from shm_nodelist
+	  until after icssvr_nodedown_svc_wait() completes in
+	  ipc_shm_nodedown(). A deadlock occurs because
+	  icssvr_nodedown_svr_wait() waits for svr_ripc_shm_cleanup() to
+	  complete.
+	- Remove shm_sem_owned(). No longer used.
+	- Fix bug introduced in CVS tag OPENSSI-FC-1-9-6-PRE20. Remote SHM
+	  client stuck in shm_destroy(). cli_ripc_shm_cleanup() deadlock with
+	  ripc_shm_get_nattchs(). shm_ids.sem mutex is held during
+	  cli_ripc_shm_cleanup() which is a blocking RPC and triggers
+	  ripc_shm_get_nattchs() callback. A deadlock occurs when the callback
+	  waits for shm_ids.sem already held prior the RPC.
+	- ssi_shm_cleanup() at remote client no longer handles -EREMOTE (aka.
+	  node down). This is because SHM segment is cleaned up during
+	  nodedown. Now ripc_shm_rmid() drops shm_ids.sem for caller since
+	  there is no longer the need to return with shm_ids.sem held.
+	- Make abort_rmid() more robust during low memory.
+	- Fix RIPC_SHMCTL() in sys_shmctl(SHM_INFO) path deadlock with remote
+	  RIPC_SHM_GET_NATTCHS() in ssi_shm_cleanup() path.  Both callers hold
+	  shm_ids.sem at their node during RPC.
+
+	 cluster/ssi/ipc/ipcshm_svr.c  |   88 ++++++++++++++++++++--------------
+	 include/cluster/ssi/ipc/shm.h |    1 
+	 ipc/shm.c                     |   22 +++++---
+	 3 files changed, 67 insertions(+), 44 deletions(-)
+
+2010/03/21	rogertsang <[email protected]>
+	* CVS Tag: OPENSSI-FC-1-9-6-PRE24
+
+	* CFS (#ifdef CFS_CHARD_SYNC_FIX):
+	- Fix bug introduced in CVS tag OPENSSI-FC-1-9-6-PRE13. Writer can get
+	  stuck in cfs_wait_on_requests() during failover. When
+	  cfs_prepare_reflush() is traversed the requests marked for commit are
+	  re-dirtied and locked. However locked requests cannot be flushed. So
+	  cfs_wait_on_requests() waits forever for the dirtied requests to get
+	  flushed.
+
+	 cluster/ssi/cfs/write.c |    5 +++++
+	 1 files changed, 5 insertions(+)
+
+	* IPC (#ifdef SSI_IPC_OBJ_DB_LOCKLESS):
+	- objsvr_find_key() re-arrange order of tests. Test for localview
+	  before server nodenum as was done in original code.
+
+	 cluster/ssi/ipc/namesvr_func.c |    7 ++++---
+	 1 files changed, 4 insertions(+), 3 deletions(-)
+
+	* VPROC:
+	- Move vproc_alloc() outside VPROC_LOCK_EXCL() in
+	  vpop_setup_vproc_relations(). Shrink critical section.
+
+	 cluster/ssi/vproc/dvp_vpops.c |   21 +++++++++++----------
+	 1 files changed, 11 insertions(+), 10 deletions(-)
+
+2010/03/15	rogertsang <[email protected]>
+
+	* IPC (#ifdef IPC_SHM_RACE_FIX):
+	- Fix bug introduced in CVS tag OPENSSI-FC-1-9-6-PRE22.
+	  ipc_shm_nodedown() might sleep while holding spinlock.
+
+	 ipc/shm.c |    3 +++
+	 1 files changed, 3 insertions(+)
+
 2010/03/15	rogertsang <[email protected]>
 	* CVS Tag: OPENSSI-FC-1-9-6-PRE23
 
@@ -27,8 +100,8 @@
 	- ipc_shm_nodedown() optimize away ipc_ids->sem lock; acquire lock only
 	  if we encounter unattached segments. Restore code to track ID of SHM
 	  segment with SHM_DEST_LOCK flag.
-	- Regression:
-	  - vfsmount struct leak in ipc_shm_nodedown().
+	- Fix bug introduced in CVS tag OPENSSI-FC-1-9-6-PRE20. vfsmount struct
+	  leak in ipc_shm_nodedown().
 
 	 cluster/ssi/ipc/ipcshm_svr.c |    8 ++-
 	 ipc/shm.c                    |   84 ++++++++++-------------------------


------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev