From: Baruch Even <[EMAIL PROTECTED]> Date: Thu, 25 Jan 2007 20:29:03 +0200
> The sorting of SACK blocks actually munges them rather than sort, causing the > TCP stack to ignore some SACK information and breaking the assumption of > ordered SACK blocks after sorting. > > The sort takes the data from a second buffer which isn't moved causing > subsequent data moves to occur from the wrong location. The fix is to > use a temporary buffer as a normal sort does. > > Signed-Off-By: Baruch Even <[EMAIL PROTECTED]> BTW, in reviewing this I note that there is now only one remaining use of tp->recv_sack_cache[] and that is the code earlier in this function which is trying to detect if all we are doing is extending the leading edge of a SACK block. It would be nice to be able to clear out that usage as well, and remove recv_sack_cache[] and thus make tcp_sock smaller. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html