diff options
Diffstat (limited to 'net/ipv4/tcp_output.c')
-rw-r--r-- | net/ipv4/tcp_output.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index ce506af5ce07..030fc69ea217 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c | |||
@@ -653,9 +653,7 @@ static void tcp_set_skb_tso_segs(struct sock *sk, struct sk_buff *skb, unsigned | |||
653 | } | 653 | } |
654 | 654 | ||
655 | /* When a modification to fackets out becomes necessary, we need to check | 655 | /* When a modification to fackets out becomes necessary, we need to check |
656 | * skb is counted to fackets_out or not. Another important thing is to | 656 | * skb is counted to fackets_out or not. |
657 | * tweak SACK fastpath hint too as it would overwrite all changes unless | ||
658 | * hint is also changed. | ||
659 | */ | 657 | */ |
660 | static void tcp_adjust_fackets_out(struct sock *sk, struct sk_buff *skb, | 658 | static void tcp_adjust_fackets_out(struct sock *sk, struct sk_buff *skb, |
661 | int decr) | 659 | int decr) |
@@ -667,11 +665,6 @@ static void tcp_adjust_fackets_out(struct sock *sk, struct sk_buff *skb, | |||
667 | 665 | ||
668 | if (!before(tcp_highest_sack_seq(tp), TCP_SKB_CB(skb)->seq)) | 666 | if (!before(tcp_highest_sack_seq(tp), TCP_SKB_CB(skb)->seq)) |
669 | tp->fackets_out -= decr; | 667 | tp->fackets_out -= decr; |
670 | |||
671 | /* cnt_hint is "off-by-one" compared with fackets_out (see sacktag) */ | ||
672 | if (tp->fastpath_skb_hint != NULL && | ||
673 | after(TCP_SKB_CB(tp->fastpath_skb_hint)->seq, TCP_SKB_CB(skb)->seq)) | ||
674 | tp->fastpath_cnt_hint -= decr; | ||
675 | } | 668 | } |
676 | 669 | ||
677 | /* Function to create two new TCP segments. Shrinks the given segment | 670 | /* Function to create two new TCP segments. Shrinks the given segment |
@@ -1753,11 +1746,6 @@ static void tcp_retrans_try_collapse(struct sock *sk, struct sk_buff *skb, int m | |||
1753 | 1746 | ||
1754 | /* changed transmit queue under us so clear hints */ | 1747 | /* changed transmit queue under us so clear hints */ |
1755 | tcp_clear_retrans_hints_partial(tp); | 1748 | tcp_clear_retrans_hints_partial(tp); |
1756 | /* manually tune sacktag skb hint */ | ||
1757 | if (tp->fastpath_skb_hint == next_skb) { | ||
1758 | tp->fastpath_skb_hint = skb; | ||
1759 | tp->fastpath_cnt_hint -= tcp_skb_pcount(skb); | ||
1760 | } | ||
1761 | 1749 | ||
1762 | sk_stream_free_skb(sk, next_skb); | 1750 | sk_stream_free_skb(sk, next_skb); |
1763 | } | 1751 | } |