2020-06-16 06:49:55

by David Gow

[permalink] [raw]
Subject: [PATCH] kunit: kunit_tool: Fix invalid result when build fails

When separating out different phases of running tests[1]
(build/exec/parse/etc), the format of the KunitResult tuple changed
(adding an elapsed_time variable). This is not populated during a build
failure, causing kunit.py to crash.

This fixes [1] to probably populate the result variable, causing a
failing build to be reported properly.

[1]:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=45ba7a893ad89114e773b3dc32f6431354c465d6

Signed-off-by: David Gow <[email protected]>
---
tools/testing/kunit/kunit.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/testing/kunit/kunit.py b/tools/testing/kunit/kunit.py
index 787b6d4ad716..f9b769f3437d 100755
--- a/tools/testing/kunit/kunit.py
+++ b/tools/testing/kunit/kunit.py
@@ -82,7 +82,9 @@ def build_tests(linux: kunit_kernel.LinuxSourceTree,
request.make_options)
build_end = time.time()
if not success:
- return KunitResult(KunitStatus.BUILD_FAILURE, 'could not build kernel')
+ return KunitResult(KunitStatus.BUILD_FAILURE,
+ 'could not build kernel',
+ build_end - build_start)
if not success:
return KunitResult(KunitStatus.BUILD_FAILURE,
'could not build kernel',
--
2.27.0.290.gba653c62da-goog


2020-06-18 20:45:34

by Brendan Higgins

[permalink] [raw]
Subject: Re: [PATCH] kunit: kunit_tool: Fix invalid result when build fails

On Mon, Jun 15, 2020 at 11:47 PM David Gow <[email protected]> wrote:
>
> When separating out different phases of running tests[1]
> (build/exec/parse/etc), the format of the KunitResult tuple changed
> (adding an elapsed_time variable). This is not populated during a build
> failure, causing kunit.py to crash.
>
> This fixes [1] to probably populate the result variable, causing a
> failing build to be reported properly.
>
> [1]:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=45ba7a893ad89114e773b3dc32f6431354c465d6
>
> Signed-off-by: David Gow <[email protected]>

Oh wow! This is an old issue.

Nice work!

Reviewed-by: Brendan Higgins <[email protected]>
Tested-by: Brendan Higgins <[email protected]>