[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <be2a28e9-6e5b-37a7-b298-2fef410d3be3@kernel.org>
Date: Wed, 19 Feb 2020 15:18:08 -0700
From: shuah <shuah@...nel.org>
To: Heidi Fahim <heidifahim@...gle.com>, brendanhiggins@...gle.com,
linux-kselftest@...r.kernel.org, kunit-dev@...glegroups.com,
linux-kernel@...r.kernel.org
Cc: frowand.list@...il.com, shuah <shuah@...nel.org>
Subject: Re: [PATCH v2] kunit: run kunit_tool from any directory
Hi Heidi,
On 2/18/20 3:19 PM, Heidi Fahim wrote:
> Implemented small fix so that the script changes work directories to the
> root of the linux kernel source tree from which 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@...gle.com>
> Reviewed-by: Brendan Higgins <brendanhiggins@...gle.com>
Thanks for the patch. In the future please include changes from v1
to v2.
I am assuming this v2 addresses Frank's comments.
> ---
> tools/testing/kunit/kunit.py | 12 ++++++++++++
> 1 file changed, 12 insertions(+)
>
> diff --git a/tools/testing/kunit/kunit.py b/tools/testing/kunit/kunit.py
> index 3f552e847a14..060d960a7029 100755
> --- a/tools/testing/kunit/kunit.py
> +++ b/tools/testing/kunit/kunit.py
> @@ -26,6 +26,8 @@ KunitResult = namedtuple('KunitResult', ['status','result'])
> KunitRequest = namedtuple('KunitRequest', ['raw_output','timeout', 'jobs',
> 'build_dir', 'defconfig', 'json'])
>
> +KernelDirectoryPath = sys.argv[0].split('tools/testing/kunit/')[0]
> +
> class KunitStatus(Enum):
> SUCCESS = auto()
> CONFIG_FAILURE = auto()
> @@ -37,6 +39,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()
> @@ -130,6 +139,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)
>
thanks,
-- Shuah
Powered by blists - more mailing lists