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