Эх сурвалжийг харах

[PATCH] ip_output: account for fraggap when checking to add trailer_len

During other work I noticed that ip_append_data() seemed to be forgetting to
include the frag gap in its calculation of a fragment that consumes the rest of
the payload.  Herbert confirmed that this was a bug that snuck in during a
previous rework.

Signed-off-by: Zach Brown <zach.brown@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Zach Brown 19 жил өмнө
parent
commit
3d9dd7564d

+ 1 - 1
net/ipv4/ip_output.c

@@ -904,7 +904,7 @@ alloc_new_skb:
 			 * because we have no idea what fragment will be
 			 * because we have no idea what fragment will be
 			 * the last.
 			 * the last.
 			 */
 			 */
-			if (datalen == length)
+			if (datalen == length + fraggap)
 				alloclen += rt->u.dst.trailer_len;
 				alloclen += rt->u.dst.trailer_len;
 
 
 			if (transhdrlen) {
 			if (transhdrlen) {