[SSI] openssi/kernel/include/cluster/gen cfs.svc, 1.4, 1.5 reopen.x, 1.5, 1.6
Roger Tsang <[email protected]>
| Newsgroups | gmane.linux.cluster.ssic.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/ssic-linux/openssi/kernel/include/cluster/gen
In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv8553/include/cluster/gen
Modified Files:
Tag: OPENSSI-FC
cfs.svc reopen.x
Log Message:
Bug fixes and enhancements. (see ChangeLog)
Index: reopen.x
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/include/cluster/gen/reopen.x,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- reopen.x 10 Oct 2008 08:10:33 -0000 1.5
+++ reopen.x 3 Feb 2009 06:18:13 -0000 1.6
@@ -38,6 +38,11 @@
%#include <cluster/nsc.h>
+%#ifndef _PATHPAGEP_T
+%#define _PATHPAGEP_T
+%typedef char * pathpagep_t;
+%#endif
+
#ifdef RPC_XDR
%#include <cluster/rpc/xdr.h>
%
@@ -53,6 +58,20 @@
% return xdr_opaque(xdrs, (void *)objp, sizeof(*objp));
%}
%
+%bool_t
+%xdr_pathpagep_t(XDR *xdrs, pathpagep_t *objp)
+%{
+% switch (xdrs->x_op) {
+% case XDR_FREE:
+% if (!*objp) break;
+% free_page ((unsigned long) *objp);
+% case XDR_DECODE:
+% *objp = NULL;
+% case XDR_ENCODE:
+% ;
+% }
+% return 1 /* true */;
+%}
#endif /*RPC_XDR*/
#define MAX_DATA 96 /* NSC_XXX */
@@ -83,7 +102,8 @@
arch_ulong ino;
__u32 generation;
arch_ulong parent_ino;
- arch_char *pathpage;
+ /* This must be a pointer to a gfp allocated page, or NULL: */
+ pathpagep_t pathpage;
string pathname<>;
clusternode_t svrnode;
arch_int deleted;
@@ -94,9 +114,9 @@
filockdata_list_t lckdata_info;
};
+%#ifdef REOP_EXPORT_PATH_SVRNODE
%#ifdef SSI_SOCK_REOP_TYPE
struct fb_data {
- clusternode_t svrnode;
arch_ulong fileid;
arch_ulong ino;
loff_t pos;
@@ -112,6 +132,22 @@
};
%#else
struct fb_data {
+ arch_ulong fileid;
+ arch_ulong ino;
+ loff_t pos;
+ arch_uint flags;
+ struct fown_struct f_owner;
+#ifdef NOTYET
+ fbtokinfo fbtok; /* fbtok information */
+#endif
+ struct pathdata *path;
+ arch_char *rfb; /* needed for clean-up */
+ mode_t f_mode;
+};
+%#endif /* !SSI_SOCK_REOP_TYPE */
+%#define fb_svrnode path->svrnode
+%#else
+struct fb_data {
clusternode_t svrnode;
arch_ulong fileid;
arch_ulong ino;
Index: cfs.svc
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/include/cluster/gen/cfs.svc,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- cfs.svc 20 Apr 2008 05:49:24 -0000 1.4
+++ cfs.svc 3 Feb 2009 06:18:13 -0000 1.5
@@ -62,9 +62,14 @@
/* OOL user pointers must go last. */
param OUT:OOL:VAR:USER char **buffer
#else
+#ifndef CFS_PAGEVEC_BUFFER_READ
param INOUT u_long *count
+#endif
/* OOL user pointers must go last. */
param OUT:OOL:VAR:NOGEN struct kvec **vec
+#ifdef CFS_PAGEVEC_BUFFER_READ
+ param OUT:OOL:VAR:USER char **buffer
+#endif
#endif
}
@@ -75,9 +80,14 @@
/* OOL user pointers must go last. */
param IN:OOL:VAR:USER char *buffer
#else
+#ifndef CFS_PAGEVEC_BUFFER_WRITE
param IN u_long count
+#endif
/* OOL user pointers must go last. */
param IN:OOL:VAR:NOGEN struct kvec **vec
+#ifdef CFS_PAGEVEC_BUFFER_WRITE
+ param IN:OOL:VAR:USER char *buffer
+#endif
#endif
}
------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com