tools: selftests: add test for changing routes with PTMU exceptions
authorSean Tranchetti <stranche@codeaurora.org>
Wed, 6 Jan 2021 00:22:26 +0000 (16:22 -0800)
committerJakub Kicinski <kuba@kernel.org>
Thu, 7 Jan 2021 20:03:36 +0000 (12:03 -0800)
commit5316a7c0130acf09bfc8bb0092407006010fcccc
tree00e27b6f7337dfdedf57ce1bfb119b1764fa165b
parentd8f5c29653c3f6995e8979be5623d263e92f6b86
tools: selftests: add test for changing routes with PTMU exceptions

Adds new 2 new tests to the PTMU script: pmtu_ipv4/6_route_change.

These tests explicitly test for a recently discovered problem in the
IPv6 routing framework where PMTU exceptions were not properly released
when replacing a route via "ip route change ...".

After creating PMTU exceptions, the route from the device A to R1 will be
replaced with a new route, then device A will be deleted. If the PMTU
exceptions were properly cleaned up by the kernel, this device deletion
will succeed. Otherwise, the unregistration of the device will stall, and
messages such as the following will be logged in dmesg:

unregister_netdevice: waiting for veth_A-R1 to become free. Usage count = 4

Signed-off-by: Sean Tranchetti <stranche@codeaurora.org>
Reviewed-by: David Ahern <dsahern@kernel.org>
Link: https://lore.kernel.org/r/1609892546-11389-2-git-send-email-stranche@quicinc.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/pmtu.sh