diff mbox

tests/igt: dmesg noise is a kernel failure

Message ID 20161007070631.732-1-daniel.vetter@ffwll.ch (mailing list archive)
State New, archived
Headers show

Commit Message

Daniel Vetter Oct. 7, 2016, 7:06 a.m. UTC
At least when testing the kernel. In normal programs pretty much all
the dmesg noise would simply be replaced by debug asserts, but in the
kernel we try rely hard to not fall over minor inconsistencies.

Still for CI purposes there's not really a difference, hence don't
treat it as such.

Motivated since once again I've seen a statistics where this was split
up, and then a reduction of "failures" (but in reality just trading
them in for more "warnings") praised as success.

v2: Clamp to "dmesg-fail" to keep dmesg noise easily identifiable
(Ville).

Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Acked-by: Dylan Baker <dylan@pnwbakers.com>
Cc: jari.tahvanainen@intel.com
Cc: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
---
 tests/igt.py | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Chris Wilson Oct. 7, 2016, 7:12 a.m. UTC | #1
On Fri, Oct 07, 2016 at 09:06:31AM +0200, Daniel Vetter wrote:
> At least when testing the kernel. In normal programs pretty much all
> the dmesg noise would simply be replaced by debug asserts, but in the
> kernel we try rely hard to not fall over minor inconsistencies.
> 
> Still for CI purposes there's not really a difference, hence don't
> treat it as such.
> 
> Motivated since once again I've seen a statistics where this was split
> up, and then a reduction of "failures" (but in reality just trading
> them in for more "warnings") praised as success.
> 
> v2: Clamp to "dmesg-fail" to keep dmesg noise easily identifiable
> (Ville).
> 
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Acked-by: Dylan Baker <dylan@pnwbakers.com>
> Cc: jari.tahvanainen@intel.com
> Cc: Petri Latvala <petri.latvala@intel.com>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> ---
>  tests/igt.py | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/tests/igt.py b/tests/igt.py
> index 7ebb03646b50..21e55e115654 100644
> --- a/tests/igt.py
> +++ b/tests/igt.py
> @@ -123,6 +123,10 @@ class IGTTest(Test):
>          else:
>              self.result.result = 'fail'
>  
> +        # all dmesg noise is considered a test failure when testing the kernel
> +        if self.result.dmesg
> +            self.result.result = 'dmesg-fail'

This is changing a fail to dmesg-fail. I hate that.
-Chris
Tahvanainen, Jari Oct. 7, 2016, 7:59 a.m. UTC | #2
Double checking the full picture of the impact: 
- Current - test result value list for igt (=default piglit): pass, warn, dmesg-warn, fail, dmesg-fail, timeout, crash, incomplete
- Intent with proposal below - test result value list for igt (kernel testing): pass, warn, fail, dmesg-fail, timeout, crash, incomplete
Right or wrong?
Or will fail vanish from this list too like Chris said? Or will there be scenario where one can have fail without dmesg?

BR, Jari

-----Original Message-----
From: Chris Wilson [mailto:chris@chris-wilson.co.uk] 
Sent: Friday, October 7, 2016 10:12 AM
To: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Intel Graphics Development <intel-gfx@lists.freedesktop.org>; piglit discussion list <piglit@lists.freedesktop.org>; Ville Syrjälä <ville.syrjala@linux.intel.com>; Tahvanainen, Jari <jari.tahvanainen@intel.com>; Latvala, Petri <petri.latvala@intel.com>; Vetter, Daniel <daniel.vetter@intel.com>
Subject: Re: [PATCH] tests/igt: dmesg noise is a kernel failure

On Fri, Oct 07, 2016 at 09:06:31AM +0200, Daniel Vetter wrote:
> At least when testing the kernel. In normal programs pretty much all 
> the dmesg noise would simply be replaced by debug asserts, but in the 
> kernel we try rely hard to not fall over minor inconsistencies.
> 
> Still for CI purposes there's not really a difference, hence don't 
> treat it as such.
> 
> Motivated since once again I've seen a statistics where this was split 
> up, and then a reduction of "failures" (but in reality just trading 
> them in for more "warnings") praised as success.
> 
> v2: Clamp to "dmesg-fail" to keep dmesg noise easily identifiable 
> (Ville).
> 
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Acked-by: Dylan Baker <dylan@pnwbakers.com>
> Cc: jari.tahvanainen@intel.com
> Cc: Petri Latvala <petri.latvala@intel.com>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> ---
>  tests/igt.py | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/tests/igt.py b/tests/igt.py index 
> 7ebb03646b50..21e55e115654 100644
> --- a/tests/igt.py
> +++ b/tests/igt.py
> @@ -123,6 +123,10 @@ class IGTTest(Test):
>          else:
>              self.result.result = 'fail'
>  
> +        # all dmesg noise is considered a test failure when testing the kernel
> +        if self.result.dmesg
> +            self.result.result = 'dmesg-fail'

This is changing a fail to dmesg-fail. I hate that.
-Chris

--
Chris Wilson, Intel Open Source Technology Centre
---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
Ville Syrjälä Oct. 7, 2016, 8:43 a.m. UTC | #3
On Fri, Oct 07, 2016 at 08:12:02AM +0100, Chris Wilson wrote:
> On Fri, Oct 07, 2016 at 09:06:31AM +0200, Daniel Vetter wrote:
> > At least when testing the kernel. In normal programs pretty much all
> > the dmesg noise would simply be replaced by debug asserts, but in the
> > kernel we try rely hard to not fall over minor inconsistencies.
> > 
> > Still for CI purposes there's not really a difference, hence don't
> > treat it as such.
> > 
> > Motivated since once again I've seen a statistics where this was split
> > up, and then a reduction of "failures" (but in reality just trading
> > them in for more "warnings") praised as success.
> > 
> > v2: Clamp to "dmesg-fail" to keep dmesg noise easily identifiable
> > (Ville).
> > 
> > Cc: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > Acked-by: Dylan Baker <dylan@pnwbakers.com>
> > Cc: jari.tahvanainen@intel.com
> > Cc: Petri Latvala <petri.latvala@intel.com>
> > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> > ---
> >  tests/igt.py | 4 ++++
> >  1 file changed, 4 insertions(+)
> > 
> > diff --git a/tests/igt.py b/tests/igt.py
> > index 7ebb03646b50..21e55e115654 100644
> > --- a/tests/igt.py
> > +++ b/tests/igt.py
> > @@ -123,6 +123,10 @@ class IGTTest(Test):
> >          else:
> >              self.result.result = 'fail'
> >  
> > +        # all dmesg noise is considered a test failure when testing the kernel
> > +        if self.result.dmesg
> > +            self.result.result = 'dmesg-fail'
> 
> This is changing a fail to dmesg-fail. I hate that.

I don't know if there's a way to win here. We're trying to reduce 4
states to 3 states for whatever reason, so we're going to lose
information :(

Doing it this way you'll have to go through every dmesg-fail as well as
the fails if you want to see all test failures. Doing it the other way
means going through all the fails to find the dmesg warns.
diff mbox

Patch

diff --git a/tests/igt.py b/tests/igt.py
index 7ebb03646b50..21e55e115654 100644
--- a/tests/igt.py
+++ b/tests/igt.py
@@ -123,6 +123,10 @@  class IGTTest(Test):
         else:
             self.result.result = 'fail'
 
+        # all dmesg noise is considered a test failure when testing the kernel
+        if self.result.dmesg
+            self.result.result = 'dmesg-fail'
+
 
 def list_tests(listname):
     """Parse igt test list and return them as a list."""