]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Rx: Do not stop keepalives on ACKALL receipt
authorAndrew Deason <adeason@sinenomine.net>
Mon, 31 Jan 2011 21:00:09 +0000 (15:00 -0600)
committerDerrick Brashear <shadow@dementia.org>
Tue, 8 Feb 2011 14:56:10 +0000 (06:56 -0800)
We need to still keep sending periodic keepalives after receiving an
ACKALL, since the call is not done yet. ACKALLs can be received when
the peer has received all data from us, well before the call has
finished. This is particularly noticeable for long-lived calls that
have little data transfer, such as AFSVolForward and
AFSVolForwardMultiple.

This reverts commit b1549f29a9515de09d4a64bfb28bf5afdfee2615, which
was intended to be part of a fix for RT 20727.

FIXES 128848

Reviewed-on: http://gerrit.openafs.org/3876
Tested-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit ba51b43e3558058b949ccc5de1d4559e4caf9d9b)

Change-Id: I9a2edb819ba052786ec9f4c9d15d11ea48905af3
Reviewed-on: http://gerrit.openafs.org/3878
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
src/rx/rx.c

index 35d0c7f4241e5ce7c36422aa6f2a762e720568aa..9b404a1095a0d3b9e2f7715b80e310b22695ef2c 100644 (file)
@@ -3424,7 +3424,6 @@ rxi_ReceivePacket(struct rx_packet *np, osi_socket socket,
        }
 #endif /* AFS_GLOBAL_RXLOCK_KERNEL */
        rxi_ClearTransmitQueue(call, 0);
-       rxevent_Cancel(call->keepAliveEvent, call, RX_CALL_REFCOUNT_ALIVE);
        break;
     default:
        /* Should not reach here, unless the peer is broken: send an abort