Subject: Re: [PATCH net-next 2/2] selftests: net: ksft: support marking tests as disruptive

From: Stanislav Fomichev <[email-masked]>
Date: Tue, 30 Jul 2024 09:20:05 -0700

On 07/29, Jakub Kicinski wrote:
> On Mon, 29 Jul 2024 15:10:42 -0700 Stanislav Fomichev wrote:
> > +    parser = argparse.ArgumentParser()
> > +    parser.add_argument('--skip-disruptive', default=False, action='store_true', help='skip tests that might be disruptive (e.g. restart the interface)')
> > +    global KSFT_ARGS
> > +    KSFT_ARGS = parser.parse_args()
> 
> We pass all other args via env exports, I think we should stick to
> that, it's easier to integrate with external runners.
> 
> FWIW Mohsin is also adding VERBOSE=1 this way:
> https://lore.kernel.org/all/[email-masked]/

SG! The patch you reference is doing it in NetDrvEnv* but I'll probably
try to keep most of the code in 'core' ksft. So far I'm thinking about
adding some ksft_setup(env) to initialize that disruptive=yes/no state.
LMK if you prefer me to keep everything in NetDrvEnv instead (or wait
until I send out a v2 later today).

And thanks for the feedback on 1/2, will incorporate in the v2.

diff --git a/tools/testing/selftests/drivers/net/lib/py/env.py b/tools/testing/selftests/drivers/net/lib/py/env.py
index a5e800b8f103..2b2a216bf108 100644
--- a/tools/testing/selftests/drivers/net/lib/py/env.py
+++ b/tools/testing/selftests/drivers/net/lib/py/env.py
@@ -4,6 +4,7 @@ import os
 import time
 from pathlib import Path
 from lib.py import KsftSkipEx, KsftXfailEx
+from lib.py import ksft_setup
 from lib.py import cmd, ethtool, ip
 from lib.py import NetNS, NetdevSimDev
 from .remote import Remote
@@ -30,6 +31,7 @@ from .remote import Remote
             if len(pair) != 2:
                 raise Exception("Can't parse configuration line:", full_file)
             env[pair[0]] = pair[1]
+    ksft_setup(env)
     return env