OpenAFS Master Repository branch, openafs-devel-1_7_x, updated. openafs-devel-1_7_27-2-g801873a

Gerrit Code Review
Sat, 26 Oct 2013 16:52:05 -0700 (PDT)

The following commit has been merged in the openafs-devel-1_7_x branch:
commit 801873abdecc1abf7c9ecb0150771b9bdc1c4ab7
Author: Rod Widdowson <>
Date:   Sun Oct 20 14:29:35 2013 -0400

    Windows: EOF for Synchronous Deferred Writes on XP/2003
    The Windows IO Manager is not supposed to issue multiple
    outstanding cached writes to a file system for a synchronous
    file object.  To do so would risk out of order application
    of writes that extend the end of file and in turn risk data
    corruption.  It turns out that on Server 2003 SP2 and more
    than likely XP and 2000 as well, if a file system returns
    STATUS_PENDING because a write was deferred due to the
    Windows Cache Manager failing CcCanIWrite(), the IO Manager
    will happily continue issue subsequent write requests.
    On OSes older than Vista disable the use of deferred writes
    and sit in a spin loop waiting for the Windows cache manager
    to make room.  This is much less efficient and increases the
    write latency but it is safe.
    Tested-by: BuildBot <>
    Reviewed-by: Jeffrey Altman <>
    (cherry picked from commit 7068836e6bab73e9edcb2c84727b92b25e1a6109)
    Change-Id: I1c50a281f0287e159b34845c9bcc214c8bfe20ef
    Tested-by: BuildBot <>
    Reviewed-by: Jeffrey Altman <>

 src/WINNT/afsrdr/kernel/lib/AFSWrite.cpp |  102 ++++++++++++++++++++----------
 1 files changed, 68 insertions(+), 34 deletions(-)

OpenAFS Master Repository