]> git.baikalelectronics.ru Git - kernel.git/commit
selftests: pmtu: Fix encapsulating device in pmtu_vti6_link_change_mtu
authorStefano Brivio <sbrivio@redhat.com>
Mon, 27 May 2019 17:42:23 +0000 (19:42 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 29 May 2019 00:15:06 +0000 (17:15 -0700)
commit74f40e2cd6d0e9f91a5804123d5cfcedda9abba6
tree0a76e0e4a4ed9f582687903544ffa7babcf9d20f
parent4c67b075708546c4d10c308ab46896b7a430bf28
selftests: pmtu: Fix encapsulating device in pmtu_vti6_link_change_mtu

In the pmtu_vti6_link_change_mtu test, both local and remote addresses
for the vti6 tunnel are assigned to the same address given to the dummy
interface that we use as encapsulating device with a known MTU.

This works as long as the dummy interface is actually selected, via
rt6_lookup(), as encapsulating device. But if the remote address of the
tunnel is a local address too, the loopback interface could also be
selected, and there's nothing wrong with it.

This is what some older -stable kernels do (3.18.z, at least), and
nothing prevents us from subtly changing FIB implementation to revert
back to that behaviour in the future.

Define an IPv6 prefix instead, and use two separate addresses as local
and remote for vti6, so that the encapsulating device can't be a
loopback interface.

Reported-by: Xiumei Mu <xmu@redhat.com>
Fixes: 7e71db55b8a1 ("selftests: pmtu: Add pmtu_vti6_link_change_mtu test")
Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/net/pmtu.sh