OpenAFS Master Repository branch, openafs-devel-1_7_x, updated. openafs-devel-1_7_21-111-g1a48b81
Gerrit Code Review
gerrit@openafs.org
Sat, 23 Feb 2013 19:08:39 -0800 (PST)
The following commit has been merged in the openafs-devel-1_7_x branch:
commit 1a48b81dbf6aa91e51034f0a3ef536f2a2478966
Author: Peter Scott <pscott@kerneldrivers.com>
Date: Fri Feb 15 08:44:06 2013 -0500
Windows: Permit direct to service non-wildcard lookups
The AFS redirector has required that directories be fully enumerated
when the directory object is opened. This is a very expensive
operation involving large numbers of file server RPC round trips for
directories with tens of thousands of objects and those containing
symlinks.
This patchset delays directory enumeration for the last component
in a path until such time as dirctory data is requested by the
application. If the request is for a non-wildcard pattern, the
service will be asked to provide the details for just the one required
object.
Delaying the directory enumeration improves performance for
GetFileAttributes[Ex], GetDiskFreeSpace[Ex], GetVolumeInformation,
and GetNamedSecurityInfo Win32 API calls. In those cases it is
no longer necessary to enumerate the target directory at all.
Reviewed-on: http://gerrit.openafs.org/9118
Reviewed-by: Peter Scott <pscott@kerneldrivers.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
(cherry picked from commit b7ba97ad537bd0e9a241f052ddd1c3a50c74745b)
Change-Id: Id84fdd33a675b27b11ba8479a8449fe412af3076
Reviewed-on: http://gerrit.openafs.org/9222
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
src/WINNT/afsrdr/kernel/lib/AFSDirControl.cpp | 618 +++++++++++++++++-----
src/WINNT/afsrdr/kernel/lib/AFSNameSupport.cpp | 3 +-
src/WINNT/afsrdr/kernel/lib/Include/AFSCommon.h | 5 +
src/WINNT/afsrdr/kernel/lib/Include/AFSDefines.h | 1 +
4 files changed, 490 insertions(+), 137 deletions(-)
--
OpenAFS Master Repository