• SeongJae Park's avatar
    kunit: Fix '--build_dir' option · 6ec1b81d
    SeongJae Park authored
    Running kunit with '--build_dir' option gives following error message:
    
    ```
    $ ./tools/testing/kunit/kunit.py run --build_dir ../linux.out.kunit/
    [00:57:24] Building KUnit Kernel ...
    [00:57:29] Starting KUnit Kernel ...
    Traceback (most recent call last):
      File "./tools/testing/kunit/kunit.py", line 136, in <module>
        main(sys.argv[1:])
      File "./tools/testing/kunit/kunit.py", line 129, in main
        result = run_tests(linux, request)
      File "./tools/testing/kunit/kunit.py", line 68, in run_tests
        test_result = kunit_parser.parse_run_tests(kunit_output)
      File "/home/sjpark/linux/tools/testing/kunit/kunit_parser.py", line
    283, in parse_run_tests
        test_result =
    parse_test_result(list(isolate_kunit_output(kernel_output)))
      File "/home/sjpark/linux/tools/testing/kunit/kunit_parser.py", line
    54, in isolate_kunit_output
        for line in kernel_output:
      File "/home/sjpark/linux/tools/testing/kunit/kunit_kernel.py", line
    145, in run_kernel
        process = self._ops.linux_bin(args, timeout, build_dir)
      File "/home/sjpark/linux/tools/testing/kunit/kunit_kernel.py", line
    69, in linux_bin
        stderr=subprocess.PIPE)
      File "/usr/lib/python3.5/subprocess.py", line 947, in __init__
        restore_signals, start_new_session)
      File "/usr/lib/python3.5/subprocess.py", line 1551, in _execute_child
        raise child_exception_type(errno_num, err_msg)
    FileNotFoundError: [Errno 2] No such file or directory: './linux'
    ```
    
    This error occurs because the '--build_dir' option value is not passed
    to the 'run_kernel()' function.  Consequently, the function assumes
    the kernel image that built for the tests, which is under the
    '--build_dir' directory, is in kernel source directory and finally raises
    the 'FileNotFoundError'.
    
    This commit fixes the problem by properly passing the '--build_dir'
    option value to the 'run_kernel()'.
    Signed-off-by: default avatarSeongJae Park <sj38.park@gmail.com>
    Reviewed-by: default avatarBrendan Higgins <brendanhiggins@google.com>
    Tested-by: default avatarBrendan Higgins <brendanhiggins@google.com>
    Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
    6ec1b81d
kunit.py 3.94 KB