summaryrefslogtreecommitdiffstats
path: root/mm/vmacache.c
diff options
context:
space:
mode:
authorIlan Tayari <ilant@mellanox.com>2017-04-19 21:26:07 +0300
committerDavid S. Miller <davem@davemloft.net>2017-04-21 13:30:29 -0400
commit43170c4e0ba709c79130c3fe5a41e66279950cd0 (patch)
treeb2ee11ce9dc26ae3649c22689427aef30bb0e4d8 /mm/vmacache.c
parent918b70244f57920db8fcb5ae63e2d0c79b509821 (diff)
downloadlinux-stable-43170c4e0ba709c79130c3fe5a41e66279950cd0.tar.gz
linux-stable-43170c4e0ba709c79130c3fe5a41e66279950cd0.tar.bz2
linux-stable-43170c4e0ba709c79130c3fe5a41e66279950cd0.zip
gso: Validate assumption of frag_list segementation
Commit 07b26c9454a2 ("gso: Support partial splitting at the frag_list pointer") assumes that all SKBs in a frag_list (except maybe the last one) contain the same amount of GSO payload. This assumption is not always correct, resulting in the following warning message in the log: skb_segment: too many frags For example, mlx5 driver in Striding RQ mode creates some RX SKBs with one frag, and some with 2 frags. After GRO, the frag_list SKBs end up having different amounts of payload. If this frag_list SKB is then forwarded, the aforementioned assumption is violated. Validate the assumption, and fall back to software GSO if it not true. Change-Id: Ia03983f4a47b6534dd987d7a2aad96d54d46d212 Fixes: 07b26c9454a2 ("gso: Support partial splitting at the frag_list pointer") Signed-off-by: Ilan Tayari <ilant@mellanox.com> Signed-off-by: Ilya Lesokhin <ilyal@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'mm/vmacache.c')
0 files changed, 0 insertions, 0 deletions