[Piglit] [PATCH 2/2] core: don't report warn if stderr is not empty

Brian Paul brianp at vmware.com
Mon Nov 18 15:15:54 PST 2013


On 11/18/2013 04:02 PM, Dylan Baker wrote:
> On Monday, November 18, 2013 03:33:34 PM Marek Olšák wrote:
>> From: Marek Olšák <marek.olsak at amd.com>
>>
>> The usefulness of this is questionable to say the least.
>> ---
>>   framework/core.py     | 72
>> --------------------------------------------------- framework/exectest.py |
>>   2 --
>>   2 files changed, 74 deletions(-)
>>
>> diff --git a/framework/core.py b/framework/core.py
>> index d3e0ea9..7312764 100644
>> --- a/framework/core.py
>> +++ b/framework/core.py
>> @@ -438,8 +438,6 @@ class Environment:
>>
>>
>>   class Test:
>> -    ignoreErrors = []
>> -
>>       def __init__(self, runConcurrent=False):
>>           '''
>>                   'runConcurrent' controls whether this test will
>> @@ -498,31 +496,6 @@ class Test:
>>           else:
>>               status("dry-run")
>>
>> -    # Returns True iff the given error message should be ignored
>> -    def isIgnored(self, error):
>> -        for pattern in Test.ignoreErrors:
>> -            if pattern.search(error):
>> -                return True
>> -
>> -        return False
>> -
>> -    # Default handling for stderr messages
>> -    def handleErr(self, results, err):
>> -        errors = filter(lambda s: len(s) > 0,
>> -                        map(lambda s: s.strip(), err.split('\n')))
>> -
>> -        ignored = [s for s in errors if self.isIgnored(s)]
>> -        errors = [s for s in errors if s not in ignored]
>> -
>> -        if len(errors) > 0:
>> -            results['errors'] = errors
>> -
>> -            if results['result'] == 'pass':
>> -                results['result'] = 'warn'
>> -
>> -        if len(ignored) > 0:
>> -            results['errors_ignored'] = ignored
>> -
>>
>>   class Group(dict):
>>       pass
>> @@ -644,51 +617,6 @@ def load_results(filename):
>>       return testrun
>>
>>
>> -# Error messages to be ignored
>> -Test.ignoreErrors = map(re.compile,
>> -                        ["couldn't open libtxc_dxtn.so",
>> -                         "compression/decompression available",
>> -                         "Mesa: .*build",
>> -                         "Mesa: CPU.*",
>> -                         "Mesa: .*cpu detected.",
>> -                         "Mesa: Test.*",
>> -                         "Mesa: Yes.*",
>> -                         "libGL: XF86DRIGetClientDriverName.*",
>> -                         "libGL: OpenDriver: trying.*",
>> -                         "libGL: Warning in.*drirc*",
>> -                         "ATTENTION.*value of option.*",
>> -                         "drmOpen.*",
>> -                         "Mesa: Not testing OS support.*",
>> -                         "Mesa: User error:.*",
>> -                         "Mesa: Initializing .* optimizations",
>> -                         "debug_get_.*",
>> -                         "util_cpu_caps.*",
>> -                         "Mesa: 3Dnow! detected",
>> -                         "r300:.*",
>> -                         "radeon:.*",
>> -                         "Warning:.*",
>> -                         "0 errors, .*",
>> -                         "Mesa.*",
>> -                         "no rrb",
>> -                         "; ModuleID.*",
>> -                         "%.*",
>> -                         ".*failed to translate tgsi opcode.*to SSE",
>> -                         ".*falling back to interpreter",
>> -                         "GLSL version is .*, but requested version .* is "
>> -                         "required",
>> -                         "kCGErrorIllegalArgument: CGSOrderWindowList",
>> -                         "kCGErrorFailure: Set a breakpoint @ "
>> -                         "CGErrorBreakpoint\(\) to catch errors as they are
>> " -                         "logged.",
>> -                         "stw_(init|cleanup).*",
>> -                         "OpenGLInfo..*",
>> -                         "AdapterInfo..*",
>> -                         "frameThrottleRate.*",
>> -                         ".*DeviceName.*",
>> -                         "No memory leaks detected.",
>> -                         "libGL: Can't open configuration file.*"])
>> -
>> -
>>   def parse_listfile(filename):
>>       """
>>       Parses a newline-seperated list in a text file and returns a python
>> list diff --git a/framework/exectest.py b/framework/exectest.py
>> index e239940..7b1c058 100644
>> --- a/framework/exectest.py
>> +++ b/framework/exectest.py
>> @@ -203,8 +203,6 @@ class ExecTest(Test):
>>               results['dmesg'] = dmesg_diff
>>               results['timeout'] = timeout
>>
>> -            self.handleErr(results, err)
>> -
>>           else:
>>               results = TestResult()
>>               if 'result' not in results:
>
> I'm nacking this patch (I haven't looked close enough at the first one to have
> comments), I dont have s3tc installed on all of my test machines, and without
> it every single test would be warn.

If this change simply means that stderr output has not effect on test 
outcome (pass/fail/warn/etc) I think this would be an improvement. 
Debug builds of our driver on Linux/Windows emit various warnings/info 
to stderr and it's been a PITA to add new strings to the 
Test.ignoreErrors list above.

In any case though, I'd like to do some test runs here with this patch 
before it gets pushed.

-Brian



More information about the Piglit mailing list