[SSI] openssi/kernel/include/cluster/ssi/cfs cfs_fs.h, 1.23, 1.24 cfs_fs_i.h, 1.21, 1.22
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/cluster/ssi/cfs
In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv9659/include/cluster/ssi/cfs
Modified Files:
Tag: OPENSSI-FC
cfs_fs.h cfs_fs_i.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: cfs_fs.h
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/include/cluster/ssi/cfs/cfs_fs.h,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -d -r1.23 -r1.24
--- cfs_fs.h 25 Oct 2010 05:53:39 -0000 1.23
+++ cfs_fs.h 15 Dec 2010 06:44:25 -0000 1.24
@@ -92,7 +92,7 @@
#define CFS_ADDR(inode) (RPC_PEERADDR(CFS_CLIENT(inode)))
#define CFS_CONGESTED(inode) (RPC_CONGESTED(CFS_CLIENT(inode)))
#endif
-#if defined(CFS_ZAP_CACHES) && defined(CFS_FILE_RW_NOLOCK)
+#ifdef CFS_ZAP_CACHES
#define CFS_READTIME(inode) (itoc(inode)->read_cache_jiffies)
#endif
#if 0 /* legacy */
Index: cfs_fs_i.h
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/include/cluster/ssi/cfs/cfs_fs_i.h,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- cfs_fs_i.h 5 Mar 2010 05:23:57 -0000 1.21
+++ cfs_fs_i.h 15 Dec 2010 06:44:25 -0000 1.22
@@ -80,11 +80,13 @@
*
* mtime != read_cache_mtime
*/
-#if defined(CFS_ZAP_CACHES) && defined(CFS_FILE_RW_NOLOCK)
+#ifdef CFS_ZAP_CACHES
unsigned long read_cache_jiffies;
+#ifdef CFS_FILE_RW_NOLOCK
unsigned long attrtimeo;
unsigned long attrtimeo_timestamp;
#endif
+#endif /* CFS_ZAP_CACHES */
#ifdef SSI_CFS_EXNFS
/* SSI: Maybe we'll mimic the nfs client timeout code if we ever
* stack CFS on client NFS.
------------------------------------------------------------------------------
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