lkml.org 
[lkml]   [2009]   [Feb]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch 17/47] sctp: Correctly start rtx timer on new packet transmissions.
    2.6.27-stable review patch.  If anyone has any objections, please let us know.

    ------------------

    From: Vlad Yasevich <vladislav.yasevich@hp.com>

    [ Upstream commit 6574df9a89f9f7da3a4e5cee7633d430319d3350 ]

    Commit 62aeaff5ccd96462b7077046357a6d7886175a57
    (sctp: Start T3-RTX timer when fast retransmitting lowest TSN)
    introduced a regression where it was possible to forcibly
    restart the sctp retransmit timer at the transmission of any
    new chunk. This resulted in much longer timeout times and
    sometimes hung sctp connections.

    Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    net/sctp/outqueue.c | 3 +--
    1 file changed, 1 insertion(+), 2 deletions(-)

    --- a/net/sctp/outqueue.c
    +++ b/net/sctp/outqueue.c
    @@ -929,7 +929,6 @@ static int sctp_outq_flush(struct sctp_o
    }

    /* Finally, transmit new packets. */
    - start_timer = 0;
    while ((chunk = sctp_outq_dequeue_data(q)) != NULL) {
    /* RFC 2960 6.5 Every DATA chunk MUST carry a valid
    * stream identifier.
    @@ -1028,7 +1027,7 @@ static int sctp_outq_flush(struct sctp_o
    list_add_tail(&chunk->transmitted_list,
    &transport->transmitted);

    - sctp_transport_reset_timers(transport, start_timer-1);
    + sctp_transport_reset_timers(transport, 0);

    q->empty = 0;



    \
     
     \ /
      Last update: 2009-02-14 02:11    [W:0.024 / U:0.304 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site