[Piglit] [PATCH 3/6] dmesg: setup dmesg to be able to mark a test warn or fail

Daniel Vetter daniel at ffwll.ch
Thu Nov 14 08:34:38 PST 2013


On Thu, Nov 14, 2013 at 08:04:20AM -0800, Dylan Baker wrote:
> On Thursday, November 14, 2013 02:52:41 PM Daniel Vetter wrote:
> > On Tue, Nov 12, 2013 at 07:54:01AM -0800, Dylan Baker wrote:
> > > This gives the dmesg class lists of statuses that will make a test a
> > > warn or a fail, it includes a few basic checks, namely i915 errors and
> > > that tests have not segfaulted.
> > > 
> > > Signed-off-by: Dylan Baker <baker.dylan.c at gmail.com>
> > > ---
> > > 
> > >  framework/dmesg.py    | 36 ++++++++++++++++++++++++++++++++----
> > >  framework/exectest.py | 22 +++++++++++++++-------
> > >  2 files changed, 47 insertions(+), 11 deletions(-)
> > > 
> > > diff --git a/framework/dmesg.py b/framework/dmesg.py
> > > index 9a23c14..edbea88 100644
> > > --- a/framework/dmesg.py
> > > +++ b/framework/dmesg.py
> > > @@ -22,6 +22,7 @@
> > > 
> > >  """ Module implementing classes for reading posix dmesg """
> > >  
> > >  import os
> > > 
> > > +import re
> > > 
> > >  import subprocess
> > >  from threads import synchronized_self
> > > 
> > > @@ -29,8 +30,10 @@ __all__ = ['Dmesg']
> > > 
> > >  # plain text list of statuses to be considered either a warn or a fail,
> > >  any
> > >  # statuses not on this list will simply be ignored.
> > > 
> > > -WARN_STATUSES = []
> > > -FAIL_STATUSES = []
> > > +WARN_STATUSES = ['segfault']
> > > +FAIL_STATUSES = ['\[drm:.*\] \*ERROR\*',
> > > +                 '\[drm\] stuck on [a-zA-Z]* ring',
> > > +                 '\[drm\] GPU crash dump saved']
> > 
> > I think now that we filter out all the info/debug noise maybe we could go
> > the other direction and blacklist a few of the remaining things from the
> > core kernel we don't care about. E.g.
> > 
> > [ 3867.022895] gem_evict_every (2671) used greatest stack depth: 2216 bytes
> > left
> > 
> > is a warn level message, but I don't care one bit about it (as long as it
> > doesn't approach 0). But there's other warn level stuff which is fairly
> > interesting.
> > 
> > Just something to throw out there, I'm not sure what the best way would be
> > to integrate dmesg reporting for piglit in general.
> > -Daniel
> > 
> 
> My personal problem with the dmesg code we have now (and with *just* 
> blacklisting) is that I have an alps touchpad, it spams dmesg about 10 times a 
> minute, so I can't use dmesg reporting because of the massive number of false 
> positives; we could use some combination of blacklisting and whitelisting 
> however.

That sounds like we need a piglit cmdline option to supply a regex to
filter out crap like that ... Or is the alps touchpad driver so bad
there's not even a regex we could match it all against?
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch


More information about the Piglit mailing list