diff options
author | Eric Dumazet <[email protected]> | 2022-01-20 04:45:30 -0800 |
---|---|---|
committer | Jakub Kicinski <[email protected]> | 2022-01-20 20:17:50 -0800 |
commit | ebdc1a0309629e71e5910b353e6b005f022ce171 (patch) | |
tree | 00c75992d8edd404f3ee402a98964174da2ab6bc | |
parent | 48cec899e357cfb92d022a9c0df6bbe72a7f6951 (diff) |
tcp: add a missing sk_defer_free_flush() in tcp_splice_read()
Without it, splice users can hit the warning
added in commit 79074a72d335 ("net: Flush deferred skb free on socket destroy")
Fixes: f35f821935d8 ("tcp: defer skb freeing after socket lock is released")
Fixes: 79074a72d335 ("net: Flush deferred skb free on socket destroy")
Suggested-by: Jakub Kicinski <[email protected]>
Signed-off-by: Eric Dumazet <[email protected]>
Cc: Gal Pressman <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
-rw-r--r-- | net/ipv4/tcp.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c index 3b75836db19b..78e81465f5f3 100644 --- a/net/ipv4/tcp.c +++ b/net/ipv4/tcp.c @@ -842,6 +842,7 @@ ssize_t tcp_splice_read(struct socket *sock, loff_t *ppos, } release_sock(sk); + sk_defer_free_flush(sk); if (spliced) return spliced; |