[Ezbench-dev] ezBench errors & error handling
Eero Tamminen
eero.t.tamminen at intel.com
Thu Apr 27 15:45:44 UTC 2017
Hi,
Run-time errors...
First got following:
----------------------------------------------
./core.sh -P mesa -r 1 -b gputest:fur:1080p:fullscreen -b
gputest:pixmark_volplosion:1080p:fullscreen -b
gputest:pixmark_julia_fp32:1080p:fullscreen -b
gputest:pixmark_piano:1080p:fullscreen -b gputest:tess_x64:576p:window
-b unigine:heaven:1080p:fullscreen HEAD
Configuration scripts used:
Repo type = git, directory = work/upstream/mesa, version = 4e1f3af,
deployed version =
Tests that will be run: gputest:fur:1080p:fullscreen
gputest:pixmark_volplosion:1080p:fullscreen
gputest:pixmark_julia_fp32:1080p:fullscreen
gputest:pixmark_piano:1080p:fullscreen gputest:tess_x64:576p:window
unigine:heaven:1080p:fullscreen
Testing 1 versions: 4e1f3af
Estimated finish date: 17-04-27 - 18:14:32 (00h:09m:15s)
WARNING: automatic sudo rights are missing for function
'xserver_setup_start'
WARNING: automatic sudo rights are missing for function
'cpu_reclocking_disable_start'
WARNING: automatic sudo rights are missing for function
'cpu_reclocking_disable_stop'
rm: cannot remove 'logs/2017-04-27-18:05:17/lock': No such file or directory
Exiting with error code 6
----------------------------------------------
This was with just cloned ezBench repository i.e. empty logs directory
before calling core.sh. The script created
"logs/2017-04-27-18\:05\:17/" and "results" file under it before breaking.
If WARNING issues prevent it from running, they should be reported as
ERRORs.
Accidentally giving bad repository to ezbench results in nested errors.
Maybe error checking for that could also be improved:
----------------------------------------------
$ ./ezbench -p ~/work/upstream/mesa/ -r 3 -b
gputest:fur:1080p:fullscreen -b
gputest:pixmark_volplosion:1080p:fullscreen -b
gputest:pixmark_julia_fp32:1080p:fullscreen -b
gputest:pixmark_piano:1080p:fullscreen -b gputest:tess_x64:576p:window
-b unigine:heaven:1080p:fullscreen -c "911391b 637e571 bf3cdf0 c942faf
2f8d6bd 8307124 f7b1371 39644fa ec30149" mesa-regressions
2017-04-27 17:56:19: (II) Created report 'mesa-regressions'
Traceback (most recent call last):
File "ezbench/python-modules/ezbench/smartezbench.py", line 420, in
set_profile
runner = self.__create_ezbench(profile=profile)
File "ezbench/python-modules/ezbench/smartezbench.py", line 341, in
__create_ezbench
runner.set_profile(profile)
File "ezbench/python-modules/ezbench/runner.py", line 442, in set_profile
self.__send_command__("profile,{}".format(profile))
File "ezbench/python-modules/ezbench/runner.py", line 390, in
__send_command__
"err_code":err_code, "err_str":errstr}))
ezbench.runner.RunnerError: {'err_str': 'The profile does not exist',
'msg': "The runner returned the error code 12 (The profile does not
exist) for the command 'profile,~/work/upstream/mesa/'", 'err_code':
<RunnerErrorCode.CMD_PROFILE_INVALID: 12>}
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File
"/home/testrunner/work/ezbench/python-modules/ezbench/smartezbench.py",
line 426, in set_profile
if e.args['err_code'] == RunnerErrorCode.ARG_PROFILE_INVALID:
TypeError: tuple indices must be integers or slices, not str
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "./ezbench", line 146, in <module>
sbench.set_profile(args.profile)
File
"/home/testrunner/work/ezbench/python-modules/ezbench/smartezbench.py",
line 434, in set_profile
del runner
UnboundLocalError: local variable 'runner' referenced before assignment
-------------------------------------------2504---
?
This should probably be fatal error:
----------------------------------------------
Traceback (most recent call last):
File "./ezbenchd.py", line 357, in <module>
sbench.run()
File "ezbench/python-modules/ezbench/smartezbench.py", line 806, in run
runner.start_testing()
File "ezbench/python-modules/ezbench/runner.py", line 476, in
start_testing
self.__send_command__("start_testing")
File "ezbench/python-modules/ezbench/runner.py", line 399, in
__send_command__
"err_str":"Stream ended before we got '<--'"}))
ezbench.runner.RunnerError: {'err_str': "Stream ended before we got
'<--'", 'msg': 'Incomplete command:\n["WARNING: automatic sudo rights
are missing for function \'xserver_setup_start\'", "WARNING: automatic
sudo rights are missing for function
\'cpu_reclocking_disable_start\'"]', 'err_code':
<RunnerErrorCode.UNKNOWN: -1>}
Exception ignored in: <bound method Runner.__del__ of
<ezbench.runner.Runner object at 0x7fca98d8da58>>
Traceback (most recent call last):
File "ezbench/python-modules/ezbench/runner.py", line 356, in __del__
self.done()
File "ezbench/python-modules/ezbench/runner.py", line 418, in done
self.__send_command__("done")
File "ezbench/python-modules/ezbench/runner.py", line 374, in
__send_command__
self.runner.stdin.flush()
----------------------------------------------
It's also pretty nasty that the script requires sudo rights for
everything. Things that are done with sudo should be separate, so that
just them need to be granted sudo rights.
And at end of ezbenchd.py build run there were more exceptions:
----------------------------------------------
2017-04-27 18:34:32: (II) Ezbench running m2504ode set to 'ERROR'
Traceback (most recent call last):
File "./ezbenchd.py", line 357, in <module>
sbench.run()
File "ezbench/python-modules/ezbench/smartezbench.py", line 843, in run
time, cmd_output = runner.run(e.commit, e.test, False)
File "ezbench/python-modules/ezbench/runner.py", line 472, in run
r = self.__send_command__("run,{},{},{}".format(commit, test, verbose))
File "ezbench/python-modules/ezbench/runner.py", line 374, in
__send_command__
self.runner.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
Exception ignored in: <bound method Runner.__del__ of
<ezbench.runner.Runner object at 0x7f8baa57a668>>
Traceback (most recent call last):
File "ezbench/python-modules/ezbench/runner.py", line 356, in __del__
self.done()
File "ezbench/python-modules/ezbench/runner.py", line 418, in done
self.__send_command__("done")
File "ezbench/python-modules/ezbench/runner.py", line 374, in
__send_command__
self.runner.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
----------------------------------------------
Build errors...
ezBench should have a configuration option for where suitable version of
libdrm is located, or it should build one itself.
- Eero
More information about the Ezbench-dev
mailing list