[SSI] openssi/kernel/cluster/ssi/cfs cfs_chard.c,1.19,1.20
Roger Tsang <[email protected]> Tue, 25 Jan 2011 05:50:56 +0000
| Newsgroups | gmane.linux.cluster.ssic.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/ssic-linux/openssi/kernel/cluster/ssi/cfs
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv22613/cluster/ssi/cfs
Modified Files:
Tag: OPENSSI-FC
cfs_chard.c
Log Message:
- cfs_sb_soft_down: purge caches before calling process_cnodes() to reduce amount of work.
- cfs_sb_start_down: remove unused inodes on hard mount to reduce amount of work during rebuild.
Index: cfs_chard.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/cluster/ssi/cfs/cfs_chard.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- cfs_chard.c 17 Jan 2011 06:52:35 -0000 1.19
+++ cfs_chard.c 25 Jan 2011 05:50:54 -0000 1.20
@@ -515,14 +515,8 @@
}
/* No. */
else {
-#ifdef SKIP
/* Force clean unused inodes to be invalidated */
-#ifdef SHRINK_ICACHE_SB
- (void )shrink_icache_sb(sb);
-#else
-#warning No shrink_icache_sb() create in 2.6 based on GFS code
-#endif
-#endif /* SKIP */
+ invalidate_inodes(sb);
/* Wake anyone else trying to bring this SB down. */
LOCK_COND_LOCK(&mip->mi_cond_lock);
mip->mi_flags &= ~MI_START_DOWN;
@@ -616,18 +610,19 @@
? BR_SERVER : BR_CLIENT));
#endif
}
- /* Purge dcache (needed because of races between
- * remove/rename and nodedown) and start token rebuild.
- * SSI_XXX: This comment came from previous version, don't
- * know if this applies to Linux.
- */
if (!error) {
- /* shrink_dcache_parent(sb->s_root); */
+ /* Purge dcache (needed because of races between
+ * remove/rename and nodedown) and start token rebuild.
+ * SSI_XXX: This comment came from previous version, don't
+ * know if this applies to Linux.
+ */
+ //shrink_dcache_sb(sb);
+
cfs_rebuild_tokens(sb, TRUE);
- }
- /* Send completion message. */
- if (!error)
+
+ /* Send completion message. */
error = cfs_rebuild_tokens_done(sb, server, *statep);
+ }
#ifdef DEBUG
printf("cfs_sb_start_haves: error %4d state %2d vfsdown_ticks %5d\n",
@@ -846,7 +841,6 @@
spin_lock(&sb_lock);
list_del_init(&sb->s_list);
spin_unlock(&sb_lock);
- process_cnodes(sb, clean_list, NULL);
shrink_dcache_sb(sb);
/* SSI_XXX: Does there need to be a while() loop here waiting
* until invalidate_inodes() doesn't return busy?
@@ -856,6 +850,7 @@
* this invalidate only deals with the obviously unused inodes.
*/
invalidate_inodes(sb);
+ process_cnodes(sb, clean_list, NULL);
/* Try to get rid of the SB. */
drop_super(sb);
------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires
February 28th, so secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsight-sfd2d