diff options
author | Eric Dumazet <edumazet@google.com> | 2015-06-11 09:15:19 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-06-11 16:33:11 -0700 |
commit | b5e2c45783aa785cbb195e43d5f0c0c6b228bde4 (patch) | |
tree | 41407a1b7f806138bed09918c3d9fe55daf0decb /net/ipv4/tcp_output.c | |
parent | f69ad292cfd13aa7ee00847320c6bb9ba2154e87 (diff) | |
download | op-kernel-dev-b5e2c45783aa785cbb195e43d5f0c0c6b228bde4.zip op-kernel-dev-b5e2c45783aa785cbb195e43d5f0c0c6b228bde4.tar.gz |
tcp: remove obsolete check in tcp_set_skb_tso_segs()
We had various issues in the past when TCP stack was modifying
gso_size/gso_segs while clones were in flight.
Commit c52e2421f73 ("tcp: must unclone packets before mangling them")
fixed these bugs and added a WARN_ON_ONCE(skb_cloned(skb)); in
tcp_set_skb_tso_segs()
These bugs are now fixed, and because TCP stack now only sets
shinfo->gso_size|segs on the clone itself, the check can be removed.
As a result of this change, compiler inlines tcp_set_skb_tso_segs() in
tcp_init_tso_segs()
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_output.c')
-rw-r--r-- | net/ipv4/tcp_output.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index 787f57f..b1c218d 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c @@ -1066,9 +1066,6 @@ static void tcp_queue_skb(struct sock *sk, struct sk_buff *skb) /* Initialize TSO segments for a packet. */ static void tcp_set_skb_tso_segs(struct sk_buff *skb, unsigned int mss_now) { - /* Make sure we own this skb before messing gso_size/gso_segs */ - WARN_ON_ONCE(skb_cloned(skb)); - if (skb->len <= mss_now || skb->ip_summed == CHECKSUM_NONE) { /* Avoid the costly divide in the normal * non-TSO case. |