On Mon, Feb 10, 2020 at 4:26 PM Heidi Fahim <heidifahim@xxxxxxxxxx> wrote: > > Implemented small fix so that the script changes work directories to the > linux directory where kunit.py is run. This enables the user to run > kunit from any working directory. Originally considered using > os.path.join but this is more error prone as we would have to find all > file path usages and modify them accordingly. Using os.chdir ensures > that the entire script is run within /linux. > > Signed-off-by: Heidi Fahim <heidifahim@xxxxxxxxxx> Reviewed-by: Brendan Higgins <brendanhiggins@xxxxxxxxxx> Thanks! > --- > tools/testing/kunit/kunit.py | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/tools/testing/kunit/kunit.py b/tools/testing/kunit/kunit.py > index e59eb9e7f923..3cc7be7b28a0 100755 > --- a/tools/testing/kunit/kunit.py > +++ b/tools/testing/kunit/kunit.py > @@ -35,6 +35,13 @@ def create_default_kunitconfig(): > shutil.copyfile('arch/um/configs/kunit_defconfig', > kunit_kernel.kunitconfig_path) > > +def get_kernel_root_path(): > + parts = sys.argv[0] if not __file__ else __file__ > + parts = os.path.realpath(parts).split('tools/testing/kunit') > + if len(parts) != 2: > + sys.exit(1) > + return parts[0] > + > def run_tests(linux: kunit_kernel.LinuxSourceTree, > request: KunitRequest) -> KunitResult: > config_start = time.time() > @@ -114,6 +121,9 @@ def main(argv, linux=None): > cli_args = parser.parse_args(argv) > > if cli_args.subcommand == 'run': > + if get_kernel_root_path(): > + os.chdir(get_kernel_root_path()) > + > if cli_args.build_dir: > if not os.path.exists(cli_args.build_dir): > os.mkdir(cli_args.build_dir) > -- > 2.25.0.341.g760bfbb309-goog >