[SSI] openssi ChangeLog,1.250,1.251
Roger Tsang <[email protected]> Fri, 02 Apr 2010 20:58:24 +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-serv1097
Modified Files:
Tag: OPENSSI-FC
ChangeLog
Log Message:
update
Index: ChangeLog
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/ChangeLog,v
retrieving revision 1.250
retrieving revision 1.251
diff -u -d -r1.250 -r1.251
--- ChangeLog 29 Mar 2010 06:29:35 -0000 1.250
+++ ChangeLog 2 Apr 2010 20:58:21 -0000 1.251
@@ -1,5 +1,58 @@
2010/??/?? *** Release of OpenSSI 2.0.0rc1 ***
+2010/04/02 rogertsang <[email protected]>
+ * CVS Tags: OPENSSI-FC-1-9-6-PRE31, OPENSSI-FC-2-0-0-PRE3
+
+ * CFS:
+ - Fix OOPs at tok_destroy() when get_new_inode() lost the race and
+ calls destroy_inode() on partially initialized CFS inode.
+ cfs_alloc_inode() did not initialize cnode HOLD lists.
+ - Optimize away large memset operation in CFS init_once(). Much of
+ cnode structure cannot be initialized by zero'ing anyway.
+
+ * CFS (#ifdef CFS_CHARD_SYNC_FIX):
+ - Fix "desynchronized value of cfs_i.ndirty" messages after failover.
+ cfs_commit_result() to not mark requests dirty on ECFS_TRYAGAIN
+ because these requests will be re-flushed directly without going
+ through cfs_scan_dirty() again. Bug introduced in
+ OPENSSI-FC-1-9-6-PRE13 and affects failover.
+ - Rename cfs_prepare_reflush() to cfs_reflush_inode() and do the
+ re-flush directly instead of having the caller do cfs_flush_inode().
+ Do the flush directly to avoid having to clear PG_BUSY flag which may
+ cause existing threads in cfs_wait_on_requests() to return too soon.
+ Bug introduced in OPENSSI-FC-1-9-6-PRE13 and affects failover.
+
+ * CFS (#ifdef CFS_EXPORT_OPS):
+ - cfs_init_locked() no longer calls cfstok_init(); done in CFS
+ init_once() as part of the tok_destroy() OOPs fix.
+
+ cluster/ssi/cfs/inode.c | 49 +++++++++++++++----
+ cluster/ssi/cfs/write.c | 99 +++++++++++++++++++++-------------------
+ 2 files changed, 93 insertions(+), 55 deletions(-)
+
+2010/04/02 rogertsang <[email protected]>
+ * CVS Tag: OPENSSI-FC-1-9-6-PRE30
+
+ * IPC Semaphores:
+ - sem_checkid() failure message level downgraded to KERN_DEBUG in
+ __ssi_semexit() since the failure is not a bug [1941808].
+ - semundo_nodedown_thread() changes:
+ - Skip remaining sem_array->undo list when a sem_semundo struct with
+ pid is found since no other sem_semundo structures with same pid
+ exists.
+ - No longer hold sem_ids.sem mutex while traversing array of
+ sem_array structures since we are only interested in existing
+ semaphores at the time of node down event. There is no race with
+ grow_ary().
+ - Create semundo_nd_thread_lock mutex to prevent multiple
+ semundo_nodedown_thread's from racing over pid_checked marker in
+ sem_semundo structure.
+ - Only call update_queue() when a sem_semundo structure is being
+ removed.
+
+ ipc/sem.c | 74 ++++++++++++++++++++++++++++++++----------------------
+ 1 files changed, 45 insertions(+), 29 deletions(-)
+
2010/03/29 rogertsang <[email protected]>
* CVS Tag: OPENSSI-FC-1-9-6-PRE29
@@ -16,16 +69,18 @@
* IPC Semaphores:
- Fix sem_nodehint[] race. Implement sem_nodehint_lock read/write
spinlock.
- - Fix sys_semctl() error paths livelock due to stale values.
- - Fix livelock on -EINVAL in sys_semtimedop().
+ - Fix livelock in sys_semctl() if cli_ripc_semctl() fails due to
+ irrecoverable error.
+ - Fix livelock in sys_semtimedop() if cli_ripc_semop() fails due to
+ irrecoverable error.
- Consolidate redundant code. Implement ipc/sem.c:sem_find_svr_node().
- Fix semundo_nodedown_thread() partial hang due to might sleep in
process_is_alive() while holding IPC sem spinlock.
- - Add pid_checked marker in struct sem_semundo for node down
- processing.
- - Fix semundo_nodedown_thread() dereferencing invalid struct sem_array.
- - semundo_nodedown_thread() to scan sem_ids.entries->size instead of
- the maximum possible (sem_ids.max_id).
+ - Add pid_checked in struct sem_semundo for node down processing.
+ - Fix semundo_nodedown_thread() passing invalid struct sem_array to
+ update_queue().
+ - Optimize semundo_nodedown_thread() to scan sem_ids.entries->size
+ instead of the maximum possible (sem_ids.max_id).
include/linux/sem.h | 7
ipc/sem.c | 360 +++++++++++++++++++++++++-------------------
------------------------------------------------------------------------------
Download Intel® 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