diff options
author | RĂ©mi Duraffort <remi.duraffort@linaro.org> | 2018-03-16 10:46:04 +0100 |
---|---|---|
committer | Senthil Kumaran Shanmugasundaram <senthil.kumaran@linaro.org> | 2018-04-03 01:19:54 +0000 |
commit | 26897c465625b585546adcfc3443c5035036731b (patch) | |
tree | c45bbd58ec02410a72f4e061718b8eebb6a241cb /lava_dispatcher/actions/test | |
parent | 0e30433587e57453d4d28fb43c94c1b33ad9b5ce (diff) |
LAVA-1257 do not crash when STARTRUN is missing
This is happening when the signal is broken into two pieces because of some
kernel messages.
For instance in https://lkft.validation.linaro.org/scheduler/job/98105#L3203:
<LAVA[ 28.105258] random: crng init done
_SIGNAL_STARTRUN 0_ltp-sched-tests 98105_4.1.4.1>
And later:
<LAVA_SIGNAL_TESTCASE TEST_CASE_ID=runltp_sched RESULT=pass>
Received signal: <TESTCASE> TEST_CASE_ID=runltp_sched RESULT=pass
Invalid call to set_namespace_data: test
Ignore the result, print an error message trying to explain the problem to the
user and raise a TestError.
Change-Id: I69e8f52c3cf2c10893ba328dc14caa2878cd2ef0
Diffstat (limited to 'lava_dispatcher/actions/test')
-rw-r--r-- | lava_dispatcher/actions/test/shell.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lava_dispatcher/actions/test/shell.py b/lava_dispatcher/actions/test/shell.py index 4c4eda093..3049e80c4 100644 --- a/lava_dispatcher/actions/test/shell.py +++ b/lava_dispatcher/actions/test/shell.py @@ -395,6 +395,12 @@ class TestShellAction(TestAction): @nottest def signal_test_case(self, params): + # If the STARTRUN signal was not received correctly, we cannot continue + # as the test_uuid is missing. + # This is only happening when the signal string is split by some kernel messages. + if self.signal_director.test_uuid is None: + self.logger.error("Unknown test uuid. The STARTRUN signal for this test action was not received correctly.") + raise TestError("Invalid TESTCASE signal") try: data = handle_testcase(params) # get the fixup from the pattern_dict |