OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-3450-g9a8fa5d
Gerrit Code Review
gerrit@openafs.org
Sat, 23 Feb 2013 00:23:26 -0800 (PST)
The following commit has been merged in the master branch:
commit 2ca80b4b6a3fde34b5eeeba37d2df5a9e253d787
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date: Sun Dec 16 12:42:17 2012 -0500
Windows: Direct IO Support for Service
This patchset implements and enables by default the new
Direct IO pathway between the AFS redirector and the afsd_service.exe.
When Direct IO is enabled all reads and writes are performed by the
AFS redirector locking memory allocated by the kernel and mapping it into
the service's memory address space.
The service supports cache bypass in this mode when the
AFS_REQUEST_FLAG_CACHE_BYPASS flag is set in the request from the
redirector. When cache bypass is active, the AFSCache file is ignored and
data is either directly fetched from or stored to the file server. Cache
bypass is enabled by IIS and other applications that request no
intermediate buffering when opening file handles. This is often done
because the application implements its own data caching. All cache bypass
store operations are synchronous.
When cache bypass is not enabled, the memory region provided by the AFS
redirector is either used to populate the cm_buf_t objects or is populated
by them. When cache bypass is not enabled, one outstanding store
operation can be in flight asynchronously to improve performance.
Direct IO is enabled by default and can be disabled by creating the
registry value.
..\Services\TransarcAFSDaemon\Parameters
"DirectIO" DWORD 0x0
Change-Id: I3cac3660c8b8eded58226ba4a819692c454704a8
Reviewed-on: http://gerrit.openafs.org/9211
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
doc/xml/ReleaseNotesWindows/relnotes.xml | 19 +
src/WINNT/afsd/NTMakefile | 1 +
src/WINNT/afsd/afsd.h | 3 +
src/WINNT/afsd/afsd_init.c | 11 +
src/WINNT/afsd/cm_daemon.c | 7 +-
src/WINNT/afsd/cm_dcache.c | 2 +
src/WINNT/afsd/cm_direct.c | 575 ++++++++++++++++++++++++++++++
src/WINNT/afsd/cm_direct.h | 68 ++++
src/WINNT/afsrdr/user/RDRFunction.c | 305 ++++++++++++++++
src/WINNT/afsrdr/user/RDRInit.cpp | 73 ++++-
src/WINNT/afsrdr/user/RDRPrototypes.h | 23 ++
11 files changed, 1080 insertions(+), 7 deletions(-)
--
OpenAFS Master Repository