OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-2576-gcee6a38
Gerrit Code Review
gerrit@openafs.org
Wed, 6 Jun 2012 08:08:10 -0700 (PDT)
The following commit has been merged in the master branch:
commit cee6a383d3d1732e78827c839ee9513847e03aa6
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date: Sat May 26 18:11:06 2012 -0400
Windows: Adjust extent release strategy
All extents were flushed whenever AFSReleaseExtentsWithFlush was
executed. This included a call at the completion of each
NonCached Read operation which could result in heavy thrashing
as the data would be released prior to it being needed by the
application.
This patchset makes the following adjustments. First,
AFSReleaseExtentsWithFlush() has been modified to release all
but 1024 extents belonging to the file. Second, NonCached Reads
only execute AFSReleaseExtentsWithFlush() when there are more
than 4096 extents associated with the file. Third,
AFSReleaseExtentsWithFlush() now has a 'bReleaseAll' parameter
which is used for calls from AFSCleanup() and AFSFlushExtents()
which need to be able to flush all extents attached to a FCB.
Change-Id: Id8b05f02c59eb46b1881e4d905a511a2597455e8
Reviewed-on: http://gerrit.openafs.org/7520
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@secure-endpoints.com>
Tested-by: Jeffrey Altman <jaltman@secure-endpoints.com>
src/WINNT/afsrdr/kernel/lib/AFSCleanup.cpp | 3 +++
src/WINNT/afsrdr/kernel/lib/AFSExtentsSupport.cpp | 12 +++++-------
src/WINNT/afsrdr/kernel/lib/AFSFlushBuffers.cpp | 3 ++-
src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp | 6 ++++--
src/WINNT/afsrdr/kernel/lib/AFSRead.cpp | 10 ++++++++--
src/WINNT/afsrdr/kernel/lib/AFSWorker.cpp | 3 ++-
src/WINNT/afsrdr/kernel/lib/Include/AFSCommon.h | 3 ++-
7 files changed, 26 insertions(+), 14 deletions(-)
--
OpenAFS Master Repository