OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-2048-gad3c005
Gerrit Code Review
gerrit@openafs.org
Sat, 31 Dec 2011 13:20:18 -0800 (PST)
The following commit has been merged in the master branch:
commit ad3c00520b93174808f692ced3e35261030a8c1b
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date: Thu Dec 29 22:20:38 2011 -0500
Windows: add DV and error status to dir enumerations
The cm_BPlusDirEnum family of functions are atomic when generating
the directory enumeration but are not atomic with respect to the
rest of the system as the enumeration is accessed. Therefore, the
data version of the directory at the time the enumeration is created
may not be the same as the directory version when the enumeration
is fully processed. We therefore store the initial data version in the
cm_direnum_t object.
When the enumeration is fetching status information for each of the
directory entries, it is possible that the fetch status will fail.
We therefore store the fetch status error code in the cm_direnum_entry_t
object. By doing so, the consumer of the enumeration can make a
reasonable decision about the lack of status info. For example,
if the resulting error is CM_ERROR_BADFD it is known that the entry
has been removed from the directory since the initial enumeration.
Change-Id: I289881e2c59525a9f998559b00769d3ac3f335c0
Reviewed-on: http://gerrit.openafs.org/6452
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@secure-endpoints.com>
Tested-by: Jeffrey Altman <jaltman@secure-endpoints.com>
src/WINNT/afsd/cm_btree.c | 273 ++++++++++++++++++++++++++++++++++-----------
src/WINNT/afsd/cm_btree.h | 2 +
2 files changed, 208 insertions(+), 67 deletions(-)
--
OpenAFS Master Repository