From c34822d6105cef7f68423e4ebbf485b2d11b9635 Mon Sep 17 00:00:00 2001 From: Jeffrey Hutzelman Date: Thu, 22 May 2008 19:28:37 +0000 Subject: [PATCH] rx-client-keep-keepalives-20080522 LICENSE IPL10 FIXES 20727 not our bug, but, previous code refactoring broke rx. put back keepalives in client rx connections while they are turned around. --- src/rx/rx.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/rx/rx.c b/src/rx/rx.c index 8d8aa7efc..d800ace28 100644 --- a/src/rx/rx.c +++ b/src/rx/rx.c @@ -4050,6 +4050,7 @@ rxi_ReceiveAckPacket(register struct rx_call *call, struct rx_packet *np, && call->tfirst + call->nSoftAcked >= call->tnext) { call->state = RX_STATE_DALLY; rxi_ClearTransmitQueue(call, 0); + rxevent_Cancel(call->keepAliveEvent, call, RX_CALL_REFCOUNT_ALIVE); } else if (!queue_IsEmpty(&call->tq)) { rxi_Start(0, call, 0, istack); } @@ -4314,7 +4315,6 @@ rxi_SetAcksInTransmitQueue(register struct rx_call *call) } rxevent_Cancel(call->resendEvent, call, RX_CALL_REFCOUNT_RESEND); - rxevent_Cancel(call->keepAliveEvent, call, RX_CALL_REFCOUNT_ALIVE); call->tfirst = call->tnext; call->nSoftAcked = 0; @@ -4355,7 +4355,6 @@ rxi_ClearTransmitQueue(register struct rx_call *call, register int force) #endif /* AFS_GLOBAL_RXLOCK_KERNEL */ rxevent_Cancel(call->resendEvent, call, RX_CALL_REFCOUNT_RESEND); - rxevent_Cancel(call->keepAliveEvent, call, RX_CALL_REFCOUNT_ALIVE); call->tfirst = call->tnext; /* implicitly acknowledge all data already sent */ call->nSoftAcked = 0; -- 2.39.5