OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_65-71-g862390a
Gerrit Code Review
gerrit@openafs.org
Thu, 15 Oct 2009 04:42:15 -0700 (PDT)
The following commit has been merged in the master branch:
commit 862390a987f5ef4438079e7d1e961c7ddafb94ac
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date: Tue Oct 13 23:36:26 2009 -0400
Windows: AFSVolSync creationDate based readonly volume versioning
Implement readonly volume versioning based upon the .readonly
volume creation date as reported in the AFSVolSync output
parameter of every RXAFS RPC.
Whenever a new callback is obtained for an object stored within
a .readonly volume, the volume creation date is recorded in the
cm_volume object along with the callback expiration time and
a reference to the server that issued it. These values are
used to determine if a callback is present when the cm_scache
object's volume creation date matches the cm_volume object's
volume creation date. If there is no match, the cm_scache
object's individual callback information is used to determine
whether a callback has been registered.
This mechansism ensures that the whole-volume callback issued
in response to a RXAFS_FetchStatus request against a .readonly
volume can be applied to all objects that are cached from the
same version of the .readonly volume instance.
LICENSE MIT
Reviewed-on: http://gerrit.openafs.org/654
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Asanka Herath <asanka@secure-endpoints.com>
Tested-by: Asanka Herath <asanka@secure-endpoints.com>
Reviewed-by: Alistair Ferguson <alistair.ferguson@mac.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
src/WINNT/afsd/cm_callback.c | 109 +++++++++++++++++++++++------------------
src/WINNT/afsd/cm_callback.h | 2 +-
src/WINNT/afsd/cm_dcache.c | 9 +++-
src/WINNT/afsd/cm_ioctl.c | 4 ++
src/WINNT/afsd/cm_scache.c | 66 ++++++++++++++++++++++---
src/WINNT/afsd/cm_scache.h | 3 +
src/WINNT/afsd/cm_server.c | 16 ++++--
src/WINNT/afsd/cm_vnodeops.c | 41 +++++++++++++---
src/WINNT/afsd/cm_volume.c | 59 +++++++++++++++++++++--
src/WINNT/afsd/cm_volume.h | 1 +
10 files changed, 233 insertions(+), 77 deletions(-)
--
OpenAFS Master Repository