diff options
| -rw-r--r-- | net/ipv4/tcp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index 67d39b79c801..44102484a76f 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c | |||
| @@ -1371,8 +1371,10 @@ new_segment: | |||
| 1371 | pfrag->offset += copy; | 1371 | pfrag->offset += copy; |
| 1372 | } else { | 1372 | } else { |
| 1373 | err = skb_zerocopy_iter_stream(sk, skb, msg, copy, uarg); | 1373 | err = skb_zerocopy_iter_stream(sk, skb, msg, copy, uarg); |
| 1374 | if (err == -EMSGSIZE || err == -EEXIST) | 1374 | if (err == -EMSGSIZE || err == -EEXIST) { |
| 1375 | tcp_mark_push(tp, skb); | ||
| 1375 | goto new_segment; | 1376 | goto new_segment; |
| 1377 | } | ||
| 1376 | if (err < 0) | 1378 | if (err < 0) |
| 1377 | goto do_error; | 1379 | goto do_error; |
| 1378 | copy = err; | 1380 | copy = err; |
