[PVFS2-CVS] commit by neill in pvfs2/include: pvfs2-encode-stubs.h pvfs2-sysint.h

CVS commit program cvs at parl.clemson.edu
Tue Oct 19 12:02:51 EDT 2004


Update of /projects/cvsroot/pvfs2/include
In directory parlweb:/tmp/cvs-serv31256/include

Modified Files:
	pvfs2-encode-stubs.h pvfs2-sysint.h 
Log Message:
- fixed test program ls.c and admin program pvfs2-ls.c to not issue
  an extra call to readdir on every run by fixing a slight logic bug
- changed some readdir debugging
- added a directory version that is passed back from the server to
  the client on each successful readdir call (happens to be the
  directory's mtime encoded as an opaque uint64_t)
- updated client and server response structures and encoder to
  accomodate this
- NOTE: the versioning is not perfect since retrieving the directory
  mtime and iterating the handle list isn't an atomic operation with
  respect to the overall readdir op; i.e. there's still a window where
  a difference may not be detected.  then again, since the mtime is in
  seconds granularity, this should not present a major detectable
  problem anyway.  can use a different version number if problems
  arise often in practice


Index: pvfs2-encode-stubs.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/include/pvfs2-encode-stubs.h,v
diff -p -u -r1.3 -r1.4
--- pvfs2-encode-stubs.h	20 Sep 2004 00:26:03 -0000	1.3
+++ pvfs2-encode-stubs.h	19 Oct 2004 15:02:50 -0000	1.4
@@ -43,6 +43,7 @@
 #define endecode_fields_0a_struct(n,tn1,n1,ta1,a1)
 #define endecode_fields_0aa_struct(n,tn1,n1,ta1,a1,tn2,n2,ta2,a2)
 #define endecode_fields_1a_struct(n,t1,x1,tn1,n1,ta1,a1)
+#define endecode_fields_2a_struct(n,t1,x1,tn1,n1,tn2,n2,ta1,a1) 
 #define endecode_fields_3a_struct(n,t1,x1,t2,x2,t3,x3,tn1,n1,ta1,a1)
 
 #endif  /* __PINT_REQPROTO_ENCODE_FUNCS_C */

Index: pvfs2-sysint.h
===================================================================
RCS file: /projects/cvsroot/pvfs2/include/pvfs2-sysint.h,v
diff -p -u -r1.48 -r1.49
--- pvfs2-sysint.h	11 Oct 2004 13:46:45 -0000	1.48
+++ pvfs2-sysint.h	19 Oct 2004 15:02:50 -0000	1.49
@@ -124,6 +124,7 @@ typedef struct PVFS_sysresp_io_s PVFS_sy
 struct PVFS_sysresp_readdir_s
 {
     PVFS_ds_position token;
+    uint64_t directory_version;
     int pvfs_dirent_outcount;
     PVFS_dirent *dirent_array;
 };



More information about the PVFS2-CVS mailing list