OpenAFS Master Repository branch, openafs-stable-1_6_x, updated. openafs-stable-1_6_0pre2-84-g53d9914
Gerrit Code Review
gerrit@openafs.org
Mon, 14 Mar 2011 19:29:04 -0700 (PDT)
The following commit has been merged in the openafs-stable-1_6_x branch:
commit 2a4a4c715928c9c8e34e7d1285e753ea0c05cec1
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date: Wed Mar 2 14:06:48 2011 -0500
Windows: avoid use of cm_buf for MPs and Symlinks
In the Windows cache manager, the symlink and mount point
target strings are stored in the cm_scache_t mountPointString
and are not accessed out of the cm_buf_t for offset zero
except when populating the mountPointString. As a result,
every mountpoint and symlink object that is read into the cache
wastes a cm_buf_t which could otherwise be used to store
additional file or directory data.
Add cm_GetData() function which is similar to cm_GetBuffer()
except that it reads data from the file server into an arbitray
memory location instead of a cm_buf_t object. Use cm_GetData()
to read directly into the cm_scache_t object.
In addition, further optimize the communication with the
file server by using cm_GetData() to perform a RXAFS_FetchData
RPC to obtain both the target string and the status information
instead of RXAFS_FetchStatus which only returns the status
information in cases where there are no outstanding callback
registrations on the object. RXAFS_FetchStatus is still used
when a callback is active in order to obtain access permissions
for new users.
Reviewed-on: http://gerrit.openafs.org/4111
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
(cherry picked from commit dec0ba1cfaf7dd6a4ed23a2f656bd6272600d51c)
Change-Id: I2ffa85193ffeb35c9558224985ba7485ec617712
Reviewed-on: http://gerrit.openafs.org/4220
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
src/WINNT/afsd/cm_dcache.c | 351 +++++++++++++++++++++++++++++++++++++++++-
src/WINNT/afsd/cm_dcache.h | 3 +
src/WINNT/afsd/cm_scache.c | 2 +-
src/WINNT/afsd/cm_scache.h | 1 +
src/WINNT/afsd/cm_vnodeops.c | 154 +++++++------------
5 files changed, 411 insertions(+), 100 deletions(-)
--
OpenAFS Master Repository