[SSI] openssi/kernel/include/cluster/ssi/cfs cfs_fs.h, 1.22, 1.23 cfs_xdr.h, 1.8, 1.9

Roger Tsang <[email protected]> Mon, 25 Oct 2010 05:53:41 +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-serv12379/include/cluster/ssi/cfs

Modified Files:
      Tag: OPENSSI-FC
	cfs_fs.h cfs_xdr.h 
Log Message:
CFS_PROTO->write/read() avoid use of kmap pools. Remove contention when kmap pool limit is reached as the number of CFS threads grows.
- Pre-allocate pagevec during RPC setup only if the pages are not already physically mapped.
- Reduce default CFS_SERVER rsize/wsize from 1MB to 64KB.

 cluster/ssi/cfs/proc.c            |   54 ++++++++++++
 cluster/ssi/cfs/read.c            |   79 +++++++++++++++++-
 cluster/ssi/cfs/write.c           |  129 ++++++++++++++++++++++--------
 include/cluster/ssi/cfs/cfs_fs.h  |    6 +
 include/cluster/ssi/cfs/cfs_xdr.h |    4 
 5 files changed, 231 insertions(+), 41 deletions(-)


Index: cfs_fs.h
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/include/cluster/ssi/cfs/cfs_fs.h,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -d -r1.22 -r1.23
--- cfs_fs.h	5 Mar 2010 06:30:21 -0000	1.22
+++ cfs_fs.h	25 Oct 2010 05:53:39 -0000	1.23
@@ -46,8 +46,12 @@
 /* SSI_XXX: ICS_MAX_OOL_DATA_SIZE 0x10000 */
 #ifdef ICS_OOL_STRUCT_PAGES
 /* Lower PAGE_SHIFT bits reserved for page base */
-#define CFS_MAX_FILE_IO_SIZE    (0xFF000)
+#ifdef CFS_ASYNC_LOCAL_SYNC
+#define CFS_MAX_FILE_IO_SIZE    (0xF000)
 #else
+#define CFS_MAX_FILE_IO_SIZE    (0xFF000)
+#endif /* !CFS_ASYNC_LOCAL_SYNC */
+#else /* ICS_OOL_STRUCT_PAGES */
 #define CFS_MAX_FILE_IO_SIZE    (1048576U)
 #endif
 #define CFS_DEF_FILE_IO_SIZE    (4096U)

Index: cfs_xdr.h
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/include/cluster/ssi/cfs/cfs_xdr.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- cfs_xdr.h	27 Oct 2009 03:18:30 -0000	1.8
+++ cfs_xdr.h	25 Oct 2010 05:53:39 -0000	1.9
@@ -17,6 +17,8 @@
 	__u32			count;
 	loff_t			offset;
 	unsigned int		pgbase;
+	unsigned int		npages;	/* number of elements in pagevec */
+	int			is_local;	/* client @ server */
 	__u32			res_count;
 	struct cfsreadargs	args;
 /*
@@ -34,6 +36,8 @@
 	__u32			count;
 	loff_t			offset;		/* __u64 */
 	unsigned int		pgbase;
+	unsigned int		npages; /* number of elements in pagevec */
+	int			is_local;	/* client @ server */
 #ifdef CFS_ASYNC_QUEUE
 	unsigned char		priority;
 #else


------------------------------------------------------------------------------
Nokia and AT&T present the 2010 Calling All Innovators-North America contest
Create new apps & games for the Nokia N8 for consumers in  U.S. and Canada
$10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing
Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store 
http://p.sf.net/sfu/nokia-dev2dev