]> git.baikalelectronics.ru Git - kernel.git/commit
vti6: remove !skb->ignore_df check from vti6_xmit()
authorAlexey Kodanev <alexey.kodanev@oracle.com>
Thu, 23 Aug 2018 16:49:54 +0000 (19:49 +0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 30 Aug 2018 00:51:44 +0000 (17:51 -0700)
commitf3b60423b0b6829b879f3c7162d69d5eacd3f35a
treedfd663463f8853ef193b3bfc5b80738fd89a17d9
parent26f7a062f42664d3aa8cc4aa5f615d01e51b0d31
vti6: remove !skb->ignore_df check from vti6_xmit()

Before the commit 11658397231e ("vti6: fix PMTU caching and reporting
on xmit") '!skb->ignore_df' check was always true because the function
skb_scrub_packet() was called before it, resetting ignore_df to zero.

In the commit, skb_scrub_packet() was moved below, and now this check
can be false for the packet, e.g. when sending it in the two fragments,
this prevents successful PMTU updates in such case. The next attempts
to send the packet lead to the same tx error. Moreover, vti6 initial
MTU value relies on PMTU adjustments.

This issue can be reproduced with the following LTP test script:
    udp_ipsec_vti.sh -6 -p ah -m tunnel -s 2000

Fixes: 8f979d52a208 ("vti6: Add pmtu handling to vti6_xmit.")
Signed-off-by: Alexey Kodanev <alexey.kodanev@oracle.com>
Acked-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/ip6_vti.c