Message ID | 20240705015725.680275-2-kuba@kernel.org (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | selftests: drv-net: rss_ctx: more tests | expand |
Jakub Kicinski wrote: > The basic test may fail without resetting the RSS indir table. > While at it reformat the doc a tiny bit. > > Signed-off-by: Jakub Kicinski <kuba@kernel.org> > --- > tools/testing/selftests/drivers/net/hw/rss_ctx.py | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/tools/testing/selftests/drivers/net/hw/rss_ctx.py b/tools/testing/selftests/drivers/net/hw/rss_ctx.py > index 475f2a63fcd5..de2a55c0f35c 100755 > --- a/tools/testing/selftests/drivers/net/hw/rss_ctx.py > +++ b/tools/testing/selftests/drivers/net/hw/rss_ctx.py > @@ -64,9 +64,8 @@ from lib.py import ethtool, ip, defer, GenerateTraffic, CmdExitFailure > > > def test_rss_key_indir(cfg): > - """ > - Test basics like updating the main RSS key and indirection table. > - """ > + """Test basics like updating the main RSS key and indirection table.""" > + > if len(_get_rx_cnts(cfg)) < 2: > KsftSkipEx("Device has only one queue (or doesn't support queue stats)") > > @@ -89,6 +88,7 @@ from lib.py import ethtool, ip, defer, GenerateTraffic, CmdExitFailure > > # Set the indirection table > ethtool(f"-X {cfg.ifname} equal 2") > + reset_indir = defer(ethtool, f"-X {cfg.ifname} default") > data = get_rss(cfg) > ksft_eq(0, min(data['rss-indirection-table'])) > ksft_eq(1, max(data['rss-indirection-table'])) > @@ -104,7 +104,7 @@ from lib.py import ethtool, ip, defer, GenerateTraffic, CmdExitFailure > ksft_eq(sum(cnts[2:]), 0, "traffic on unused queues: " + str(cnts)) > > # Restore, and check traffic gets spread again > - ethtool(f"-X {cfg.ifname} default") > + reset_indir.exec() When is this explicit exec needed?
diff --git a/tools/testing/selftests/drivers/net/hw/rss_ctx.py b/tools/testing/selftests/drivers/net/hw/rss_ctx.py index 475f2a63fcd5..de2a55c0f35c 100755 --- a/tools/testing/selftests/drivers/net/hw/rss_ctx.py +++ b/tools/testing/selftests/drivers/net/hw/rss_ctx.py @@ -64,9 +64,8 @@ from lib.py import ethtool, ip, defer, GenerateTraffic, CmdExitFailure def test_rss_key_indir(cfg): - """ - Test basics like updating the main RSS key and indirection table. - """ + """Test basics like updating the main RSS key and indirection table.""" + if len(_get_rx_cnts(cfg)) < 2: KsftSkipEx("Device has only one queue (or doesn't support queue stats)") @@ -89,6 +88,7 @@ from lib.py import ethtool, ip, defer, GenerateTraffic, CmdExitFailure # Set the indirection table ethtool(f"-X {cfg.ifname} equal 2") + reset_indir = defer(ethtool, f"-X {cfg.ifname} default") data = get_rss(cfg) ksft_eq(0, min(data['rss-indirection-table'])) ksft_eq(1, max(data['rss-indirection-table'])) @@ -104,7 +104,7 @@ from lib.py import ethtool, ip, defer, GenerateTraffic, CmdExitFailure ksft_eq(sum(cnts[2:]), 0, "traffic on unused queues: " + str(cnts)) # Restore, and check traffic gets spread again - ethtool(f"-X {cfg.ifname} default") + reset_indir.exec() cnts = _get_rx_cnts(cfg) GenerateTraffic(cfg).wait_pkts_and_stop(20000)
The basic test may fail without resetting the RSS indir table. While at it reformat the doc a tiny bit. Signed-off-by: Jakub Kicinski <kuba@kernel.org> --- tools/testing/selftests/drivers/net/hw/rss_ctx.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)