• Vlad Yasevich's avatar
    SCTP: Fix difference cases of retransmit. · b6157d8e
    Vlad Yasevich authored
    Commit d0ce9291 broke several retransmit
    cases including fast retransmit.  The reason is that we should
    only delay by rto while doing retranmists as a result of a timeout.
    Retransmit as a result of path mtu discover, fast retransmit, or
    other evernts that should trigger immidiate retransmissions got broken.
    
    Also, since rto is doubled prior to marking of packets elegable for
    retransmission, we never marked correct chunks anyway.
    
    The fix is provide a reason for a given retransmission so that we
    can mark chunks appropriately and to save the old rto value to do
    comparisons against.
    
    All regressions tests passed with this code.
    
    Spotted by Wei Yongjun <yjwei@cn.fujitsu.com>
    Signed-off-by: default avatarVlad Yasevich <vladislav.yasevich@hp.com>
    b6157d8e
sm_sideeffect.c 43.7 KB