• David S. Miller's avatar
    [TCP]: Fix stretch ACK performance killer when doing ucopy. · 31432412
    David S. Miller authored
    When we are doing ucopy, we try to defer the ACK generation to
    cleanup_rbuf().  This works most of the time very well, but if the
    ucopy prequeue is large, this ACKing behavior kills performance.
    
    With TSO, it is possible to fill the prequeue so large that by the
    time the ACK is sent and gets back to the sender, most of the window
    has emptied of data and performance suffers significantly.
    
    This behavior does help in some cases, so we should think about
    re-enabling this trick in the future, using some kind of limit in
    order to avoid the bug case.
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    31432412
tcp_input.c 139 KB