OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-3440-g6136b23

Gerrit Code Review gerrit@openafs.org
Fri, 22 Feb 2013 13:12:39 -0800 (PST)


The following commit has been merged in the master branch:
commit 11aa3e09e591b325e80c5d4a420051923f121b82
Author: Rod Widdowson <rdw@steadingsoftware.com>
Date:   Mon Feb 18 10:33:29 2013 -0500

    Windows: Call CcDeferWrite rather than loop
    
    If we are about to write into the cache and we do not have enough
    memory we call CcDeferWrite and return STATUS_PENDING.  This allows
    the cache to call us back when there is memory.
    
    The write is performed on the IO queue which is shared wth paging
    writes.  However this does not cause paging writes to block in a
    memory shortage situation since the request will either be deferred
    again (releasing a thread to service a paging write) or will complete
    quickly.  Further we allocate all our resources upfront so we fail
    fast and in the appropriate place.
    
    Change-Id: I4efbc14a97d3b34236643973f1f8f85c7ea194a6
    Reviewed-on: http://gerrit.openafs.org/9127
    Reviewed-by: Rod Widdowson <rdw@steadingsoftware.com>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Peter Scott <pscott@kerneldrivers.com>
    Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

 src/WINNT/afsrdr/kernel/lib/AFSWorker.cpp        |  162 +++++++++++++++++++++-
 src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp         |   51 +++++--
 src/WINNT/afsrdr/kernel/lib/Include/AFSCommon.h  |   13 ++-
 src/WINNT/afsrdr/kernel/lib/Include/AFSDefines.h |    1 +
 4 files changed, 208 insertions(+), 19 deletions(-)

-- 
OpenAFS Master Repository