On Fri, Aug 22, 2025 at 02:08:42PM +0200, Alessandro Ratti wrote: > Some rtnetlink selftests assume the presence of ifconfig and iproute2 > support for the `proto` keyword in `ip address` commands. These > assumptions can cause test failures on modern systems (e.g. Debian > Bookworm) where: > > - ifconfig is not installed by default > - The iproute2 version lacks support for address protocol > > This patch improves test robustness by: > > - Skipping kci_test_promote_secondaries if ifconfig is missing > - Skipping do_test_address_proto if ip address help does not mention > proto > > These changes ensure the tests degrade gracefully by reporting SKIP > instead of FAIL when prerequisites are not met, improving portability > across systems. >
The Reviewed-by tag should be here Reviewed-by: Hangbin Liu <liuhang...@gmail.com> > Signed-off-by: Alessandro Ratti <alessan...@0x65c.net> > > --- > v2: > - Updated the patch based on review from Hangbin Liu > - Changed subject and commit message to better reflect updated behavior > - Added Reviewed-by tag > > Reviewed-by: Hangbin Liu <liuhang...@gmail.com> > --- > tools/testing/selftests/net/rtnetlink.sh | 11 +++++++++++ > 1 file changed, 11 insertions(+) > > diff --git a/tools/testing/selftests/net/rtnetlink.sh > b/tools/testing/selftests/net/rtnetlink.sh > index d6c00efeb664..c2a0e7f37391 100755 > --- a/tools/testing/selftests/net/rtnetlink.sh > +++ b/tools/testing/selftests/net/rtnetlink.sh > @@ -323,6 +323,11 @@ kci_test_addrlft() > > kci_test_promote_secondaries() > { > + run_cmd ifconfig "$devdummy" > + if [ $ret -ne 0 ]; then > + end_test "SKIP: ifconfig not installed" > + return $ksft_skip > + fi > promote=$(sysctl -n net.ipv4.conf.$devdummy.promote_secondaries) > > sysctl -q net.ipv4.conf.$devdummy.promote_secondaries=1 > @@ -1201,6 +1206,12 @@ do_test_address_proto() > local ret=0 > local err > > + run_cmd_grep 'proto' ip address help > + if [ $? -ne 0 ];then > + end_test "SKIP: addr proto ${what}: iproute2 too old" > + return $ksft_skip > + fi > + > ip address add dev "$devdummy" "$addr3" > check_err $? > proto=$(address_get_proto "$addr3") > -- > 2.39.5 >