[SSI] openssi/kernel/include/linux config.h,1.39,1.40

Roger Tsang <[email protected]> Wed, 15 Dec 2010 06:44:27 +0000
Newsgroups gmane.linux.cluster.ssic.cvs
Message-ID <[email protected]>
Update of /cvsroot/ssic-linux/openssi/kernel/include/linux
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv9659/include/linux

Modified Files:
      Tag: OPENSSI-FC
	config.h 
Log Message:
cluster/ssi/cfs/cfs_subr.c (#ifdef CFS_ZAP_CACHES)
- cfs_update_attr: touch CFS_READTIME().

cluster/ssi/cfs/dir.c
- cfs_readdir_filler, uncached_readdir: no longer set CFS_INO_INVALID_ATIME c_flags since readlink() operation updates i_atime.

cluster/ssi/cfs/file.c
- do_setlk: skip cfs_zap_caches() since attributes were piggybacked during CFS flush.
- do_unlk, do_setlk: no need to clear the cache since token architecture guarantees cache coherency.

cluster/ssi/cfs/inode.c
- cfs_getattr: obtain CFS token before starting CFS SB thread.
- cfs_getattr: remove irrelevant CFS_SB_FSOP_START/DONE dance since this function is not the RPC operation.
- Fix [ ssic-linux-bugs 2010447 ] OpenSSI fails the glibc tst-atime test
  - cfs_getattr: force a getattr RPC operation if user cares about atime. (#ifdef CFS_ZAP_CACHES)
  - __cfs_revalidate_inode: do not do getattr too often. (#ifdef CFS_REVALIDATE_GETATTR)
  - cfs_fill_inode, __cfs_hpget: disable S_NOATIME i_flags since in cfs_getattr() we force a getattr.

cluster/ssi/cfs/inode.c (#ifdef CFS_SKIP)
- cfs_setattr: no need to flush data since token architecture guarantees cache coherency.

cluster/ssi/cfs/inode.c (#ifdef CFS_FILE_WRITE_LIVELOCK_FIX)
- cfs_setattr: test for ATTR_SIZE flag instead of down_write_trylock() on i_alloc_sem since our caller only acquires i_alloc_sem when ATTR_SIZE flag is set.
- cfs_setattr: no need to immediately re-acquire i_alloc_sem after re-acquiring i_sem since there is no race with DIO. CFS does not support DIO.

include/cluster/ssi/cfs/cfs_fs_i.h (#ifdef CFS_ZAP_CACHES)
- re-enable read_cache_jiffies field in cnode structure for CFS_READTIME() macro used in __cfs_revalidate_inode().

include/cluster/ssi/cfs/cfs_fs.h (#ifdef CFS_ZAP_CACHES)
- re-enable CFS_READTIME() preprocessor macro.

include/cluster/gen/cfs.x (#ifdef CFS_REVALIDATE_GETATTR)
- re-activate various code for CFS_PROTO->getattr().

include/linux/config.h
- re-enable CFS_REVALIDATE_GETATTR preprocessor directive to activate supporting code for CFS_PROTO->getattr().

 cluster/ssi/cfs/cfs_subr.c         |    2 
 cluster/ssi/cfs/dir.c              |    6 +
 cluster/ssi/cfs/file.c             |   15 ++
 cluster/ssi/cfs/inode.c            |  155 +++++++++++++----------------
 include/cluster/gen/cfs.x          |   12 +-
 include/cluster/ssi/cfs/cfs_fs.h   |    2 
 include/cluster/ssi/cfs/cfs_fs_i.h |    4 
 include/linux/config.h             |    4 
 8 files changed, 103 insertions(+), 97 deletions(-)


Index: config.h
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/include/linux/config.h,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- config.h	8 Aug 2010 02:13:29 -0000	1.39
+++ config.h	15 Dec 2010 06:44:25 -0000	1.40
@@ -136,9 +136,7 @@
 /* XXX probably too extreme */
 /* #  define CFS_FILE_RW_NOLOCK */
 #endif
-#ifdef CFS_FILE_RW_NOLOCK
-#  define CFS_REVALIDATE_GETATTR
-#endif
+#define CFS_REVALIDATE_GETATTR
 
 #define SSI_BALANCE_MEMORY
 #define CFSTOK_TABLE_LOCK_LOCK


------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d