pmtu net kernel selftests are skipped on bionic linux-hwe-edge 5.3
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ubuntu-kernel-tests |
Fix Released
|
Undecided
|
Unassigned | ||
iproute2 (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Bionic |
Invalid
|
Undecided
|
Unassigned | ||
linux (Ubuntu) |
Fix Released
|
Undecided
|
Thadeu Lima de Souza Cascardo | ||
Bionic |
Won't Fix
|
Undecided
|
Thadeu Lima de Souza Cascardo |
Bug Description
[Impact]
selftests will incorrectly indicate a failure, taking the time of developers to verify a false positive, and preventing us from finding real bugs in the corresponding code.
[Test case]
Run the script directly and verify there are no failures.
sudo ./tools/
[Regression potential]
No kernel code was changed, only the test. The fix could cause false positives to happen with newer versions of iproute2, but those were tested as well.
-------
11:52:44 DEBUG| [stdout] # selftests: net: pmtu.sh
11:52:44 DEBUG| [stdout] # TEST: ipv4: PMTU exceptions [ OK ]
11:52:44 DEBUG| [stdout] # TEST: ipv6: PMTU exceptions [ OK ]
11:52:44 DEBUG| [stdout] # vxlan4 not supported
11:52:44 DEBUG| [stdout] # TEST: IPv4 over vxlan4: PMTU exceptions [SKIP]
11:52:44 DEBUG| [stdout] # vxlan4 not supported
11:52:44 DEBUG| [stdout] # TEST: IPv6 over vxlan4: PMTU exceptions [SKIP]
11:52:46 DEBUG| [stdout] # TEST: IPv4 over vxlan6: PMTU exceptions [ OK ]
11:52:47 DEBUG| [stdout] # TEST: IPv6 over vxlan6: PMTU exceptions [ OK ]
11:52:47 DEBUG| [stdout] # geneve4 not supported
11:52:47 DEBUG| [stdout] # TEST: IPv4 over geneve4: PMTU exceptions [SKIP]
11:52:47 DEBUG| [stdout] # geneve4 not supported
11:52:47 DEBUG| [stdout] # TEST: IPv6 over geneve4: PMTU exceptions [SKIP]
11:52:48 DEBUG| [stdout] # TEST: IPv4 over geneve6: PMTU exceptions [ OK ]
11:52:49 DEBUG| [stdout] # TEST: IPv6 over geneve6: PMTU exceptions [ OK ]
11:52:51 DEBUG| [stdout] # TEST: IPv4 over fou4: PMTU exceptions [ OK ]
11:52:52 DEBUG| [stdout] # TEST: IPv6 over fou4: PMTU exceptions [ OK ]
11:52:53 DEBUG| [stdout] # TEST: IPv4 over fou6: PMTU exceptions [ OK ]
11:52:54 DEBUG| [stdout] # TEST: IPv6 over fou6: PMTU exceptions [ OK ]
11:52:55 DEBUG| [stdout] # TEST: IPv4 over gue4: PMTU exceptions [ OK ]
11:52:57 DEBUG| [stdout] # TEST: IPv6 over gue4: PMTU exceptions [ OK ]
11:52:58 DEBUG| [stdout] # TEST: IPv4 over gue6: PMTU exceptions [ OK ]
11:52:59 DEBUG| [stdout] # TEST: IPv6 over gue6: PMTU exceptions [ OK ]
11:53:00 DEBUG| [stdout] # TEST: vti6: PMTU exceptions [ OK ]
11:53:03 DEBUG| [stdout] # TEST: vti4: PMTU exceptions [ OK ]
11:53:03 DEBUG| [stdout] # TEST: vti4: default MTU assignment [ OK ]
11:53:03 DEBUG| [stdout] # TEST: vti6: default MTU assignment [ OK ]
11:53:03 DEBUG| [stdout] # TEST: vti4: MTU setting on link creation [ OK ]
11:53:04 DEBUG| [stdout] # TEST: vti6: MTU setting on link creation [ OK ]
11:53:04 DEBUG| [stdout] # TEST: vti6: MTU changes on link changes [ OK ]
11:53:04 DEBUG| [stdout] # vxlan4 not supported
11:53:04 DEBUG| [stdout] # TEST: ipv4: cleanup of cached exceptions [SKIP]
....
Upgrading iproute2 to 5.2 fixes this.
Changed in iproute2 (Ubuntu): | |
status: | New → Fix Released |
Changed in linux-hwe-edge (Ubuntu): | |
status: | New → Invalid |
Changed in linux-hwe-edge (Ubuntu Bionic): | |
status: | New → Invalid |
The log only shows the SKIPs. I managed to reproduce one FAIL that I have seen as well:
TEST: ipv6: list and flush cached exceptions [FAIL]
can't list cached exceptions
This one ended up being caused by the script itself and a difference in behavior between different versions of iproute2.
Recent iproute2, when introducing json output support for ip route, ended up removing the newline for IPv6, while keeping it for IPv4. The script author assumed the newest behavior, but also accounted for the two lines per entry for IPv4.
iproute2, however, has a -oneline option that could just have been used in this case and that would fix the whole problem. Using it fix the FAIL, while we still have the SKIPs, which would require a new version of iproute2, at least on -backports.