OpenAFS Master Repository branch, openafs-stable-1_6_x, updated. openafs-stable-1_6_0pre6-40-g4a4dab8

Gerrit Code Review gerrit@openafs.org
Fri, 8 Jul 2011 22:06:56 -0700 (PDT)


The following commit has been merged in the openafs-stable-1_6_x branch:
commit c4e359b69a9f5e8a21cc06f7338595404d290cd2
Author: Simon Wilkinson <sxw@your-file-system.com>
Date:   Sat Jun 18 13:01:35 2011 +0100

    rx: Don't wait for TQ busy when entering recovery
    
    Two different threads can cause a call to enter recovery. The event
    thread will move a call into recovery as a result of a timeout, or
    the listener thread will move it there following a fast retransmit.
    
    In both of these cases, recovery looks different. In the case of
    a timeout, we enter slow start, starting as if we were begininning
    transmission for the first time. Following fast retransmit, we enter
    fast recovery, with different starting parameters than those coming
    from slow start.
    
    As a reslt, the current behaviour, where either call sitting in
    FAST_RECOVERY_WAIT causes the other to simply return is inappropriate.
    
    Further investigation indiciates that FAST_RECOVER_WAIT is actually
    uncessary. There is no harm caused to a thread which is currently
    blocked on the network in the middle of a transmit, in adjusting the
    window size underneath it. As both of these states collapse the window,
    that thread will simply cease sending earlier.
    
    So, simplify the code, and remove the potential race between event and
    listener by removing the FAST_RECOVER_WAIT state.
    
    Reviewed-on: http://gerrit.openafs.org/4867
    Reviewed-by: Derrick Brashear <shadow@dementia.org>
    Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
    Tested-by: Jeffrey Altman <jaltman@openafs.org>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    (cherry picked from commit 0b9c9e9973e8d32cdfe1fc884fb2c310cedc0404)
    
    Change-Id: I47525eb4cf0bb6d049094c7f98f8cc79be9ef51e
    Reviewed-on: http://gerrit.openafs.org/4939
    Reviewed-by: Derrick Brashear <shadow@dementia.org>
    Tested-by: Derrick Brashear <shadow@dementia.org>

 src/rx/rx.c      |   50 ++++++++------------------------------------------
 src/rx/rx.h      |    2 +-
 src/rx/rx_rdwr.c |   21 +++++++++++++--------
 3 files changed, 22 insertions(+), 51 deletions(-)

-- 
OpenAFS Master Repository