OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-2648-gae25cf2
Gerrit Code Review
gerrit@openafs.org
Tue, 3 Jul 2012 09:07:22 -0700 (PDT)
The following commit has been merged in the master branch:
commit ae25cf277c8d70da0e6666316baf98d5c117a03b
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date: Wed Jun 20 00:05:44 2012 -0400
Windows: force vldb lookup if server list is empty
The Windows cache manager can mark server references as "deleted"
which can give the impression that a server reference list is not
empty when it is. If the volume list is empty any attempt to
issue an RPC would fail with a CM_ERROR_ALLDOWN error. Since the
VLDB data is current, this condition will remain for two hours.
This patchset adds a new error, CM_ERROR_EMPTY, which is returned
when the server reference list is empty. cm_Analyze() is modified
to process the CM_ERROR_EMPTY error by attempting to update the
server reference list. If the update succeeds and the list is no
longer empty, the RPC is retried. Otherwise, the RPC fails as
before.
Change-Id: I13891c28ec9916bdd03c1b02e1c9049ed0581ed3
Reviewed-on: http://gerrit.openafs.org/7637
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: Jeffrey Altman <jaltman@your-file-system.com>
src/WINNT/afsd/cm_callback.c | 2 +-
src/WINNT/afsd/cm_cell.c | 2 +-
src/WINNT/afsd/cm_conn.c | 51 +++++++++++++++++++++++++++++-----
src/WINNT/afsd/cm_conn.h | 2 +-
src/WINNT/afsd/cm_dcache.c | 10 +++---
src/WINNT/afsd/cm_error.h | 1 +
src/WINNT/afsd/cm_ioctl.c | 19 +++++++-----
src/WINNT/afsd/cm_server.c | 20 +++++++++++++
src/WINNT/afsd/cm_server.h | 2 +
src/WINNT/afsd/cm_vnodeops.c | 28 +++++++++---------
src/WINNT/afsd/cm_volume.c | 6 ++--
src/WINNT/afsd/cm_volume.h | 3 ++
src/WINNT/afsd/smb.c | 4 ++-
src/WINNT/afsrdr/user/RDRFunction.c | 4 +-
14 files changed, 110 insertions(+), 44 deletions(-)
--
OpenAFS Master Repository