On Sat, 28 Nov 2020 01:21:40 +0200 Vladimir Oltean wrote: > On Fri, Nov 27, 2020 at 01:37:53PM -0800, Jakub Kicinski wrote: > > High speed systems are often eventually consistent. Either because > > stats are gathered from HW periodically by the FW, or RCU grace period > > has to expire, or workqueue has to run, etc. etc. I know it's annoying > > for writing tests but it's manageable. > > Out of curiosity, what does a test writer need to do to get out of the > "eventual consistency" conundrum in a portable way and answer the > question "has my packet not been received by the interface or has the > counter just not updated"? Retry for a reasonable amount of time for the system state to converge. E.g. bpftool_prog_list_wait() in selftests/bpf/test_offloads.py, or check_tables() in selftests/drivers/net/udp_tunnel_nic.sh. Sadly I was too lazy to open source the driver tests we built at Netronome.