Subject: Re: [TEST] bond_options.sh looks flaky

From: Jay Vosburgh <[email-masked]>
Date: Mon, 22 Jan 2024 15:25:57 -0800

Jakub Kicinski <[email-masked]> wrote:

>Hi folks,
>
>looks like tools/testing/selftests/drivers/net/bonding/bond_options.sh
>is a bit flaky. This error:
>
># TEST: prio (balance-alb arp_ip_target primary_reselect 1)           [FAIL]
># Current active slave is eth2 but not eth1
>
>https://netdev-2.bots.linux.dev/vmksft-bonding/results/432442/7-bond-options-sh
>
>was gone on the next run, even tho the only difference between 
>the content of the tree was:
>
>$ git diff net-next-2024-01-22--18-00..net-next-2024-01-22--21-00 --stat 
> Documentation/devicetree/bindings/net/adi,adin.yaml | 7 ++-----
> drivers/net/dsa/mv88e6xxx/chip.c                    | 2 +-
> drivers/net/phy/adin.c                              | 2 --
> 3 files changed, 3 insertions(+), 8 deletions(-)
>
>So definitely nothing of relevance.. 
>
>Any ideas?

	I think I see a couple of things in the test logic:

1) in bond_options.sh:

prio_arp()
{
	local primary_reselect
	local mode=$1

	for primary_reselect in 0 1 2; do
		prio_test "mode active-backup arp_interval 100 arp_ip_target ${g_ip4} primary eth1 primary_reselect $primary_reselect"
		log_test "prio" "$mode arp_ip_target primary_reselect $primary_reselect"
	done
}

	The above appears to always test with "mode active-backup"
regardless of what $mode contains, but logs that $mode was tested.  The
same is true for the prio_ns test that is just after prio_arp in
bond_options.sh.

2) The balance-alb and balance-tlb modes don't work with the ARP
monitor.  If the prio_arp or prio_ns tests were actually testing the
stated $mode with arp_interval, it should never succeed.

3) I'm not sure why this test fails, but the prior test that claims to
be active-backup does not, even though both appear to be actually
testing active-backup.  The log entries for the actual "prio
(active-backup arp_ip_target primary_reselect 1)" test start at time
281.913374, and differ from the failing test starting at 715.597039.

	-J
	
---
	-Jay Vosburgh, [email-masked]