diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
index 362b811a2460c9e5ac85c696bdec5625d0eb15f3..5e63ed09658d39f6c8fe95d99a3498ad518f0ad1 100644
--- a/net/ipv4/tcp_output.c
+++ b/net/ipv4/tcp_output.c
@@ -655,6 +655,7 @@ static int tcp_fragment(struct sock *sk, struct sk_buff *skb, u32 len)
 	}
 
 	/* Link BUFF into the send queue. */
+	skb_header_release(buff);
 	__skb_append(skb, buff);
 
 	return 0;