[Bug 90191] New: [BSW Bisected]ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_minifying_blit cause GPU hang

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Mon Apr 27 00:21:30 PDT 2015


https://bugs.freedesktop.org/show_bug.cgi?id=90191

            Bug ID: 90191
           Summary: [BSW
                    Bisected]ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebu
                    ffer_blit_functionality_minifying_blit cause GPU hang
           Product: DRI
           Version: unspecified
          Hardware: All
                OS: Linux (All)
            Status: NEW
          Severity: major
          Priority: high
         Component: DRM/Intel
          Assignee: daniel at ffwll.ch
          Reporter: huax.lu at intel.com
        QA Contact: intel-gfx-bugs at lists.freedesktop.org
                CC: intel-gfx-bugs at lists.freedesktop.org

Created attachment 115365
  --> https://bugs.freedesktop.org/attachment.cgi?id=115365&action=edit
dmesg

==System Environment==
--------------------------
Regression: YES

Non-working platforms: BSW

==kernel==
--------------------------
drm-intel-nightly/92bb36c80e561f82b1f4b63cc269a71833137841
commit 92bb36c80e561f82b1f4b63cc269a71833137841
Author: Jani Nikula <jani.nikula at intel.com>
Date:   Fri Apr 24 00:26:53 2015 +0300

    drm-intel-nightly: 2015y-04m-23d-21h-26m-24s UTC integration manifest

==Bug detailed description==
-----------------------------
It happens with drm-intel-nightly and drm-intel-next-queued kernel.It doesn't
happen on drm-intel-fixes kernel.
Following case also have this issue:
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_color_and_depth_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_color_and_stencil_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_linear_filter_color_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_magnifying_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_minifying_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_multisampled_to_singlesampled_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_nearest_filter_color_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_negative_dimensions_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_negative_height_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_negative_width_blit
ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_scissor_blit

Bisect shows: 0875546c5318c85c13d07014af5350e9000bc9e9 is the first bad
commit(It's the same as bug 90190).
commit 0875546c5318c85c13d07014af5350e9000bc9e9
Author:     Daniel Vetter <daniel.vetter at ffwll.ch>
AuthorDate: Mon Apr 20 09:04:05 2015 -0700
Commit:     Daniel Vetter <daniel.vetter at ffwll.ch>
CommitDate: Thu Apr 23 21:06:39 2015 +0200

    drm/i915: Fix up the vma aliasing ppgtt binding

    Currently we have the problem that the decision whether ptes need to
    be (re)written is splattered all over the codebase. Move all that into
    i915_vma_bind. This needs a few changes:
    - Just reuse the PIN_* flags for i915_vma_bind and do the conversion
      to vma->bound in there to avoid duplicating the conversion code all
      over.
    - We need to make binding for EXECBUF (i.e. pick aliasing ppgtt if
      around) explicit, add PIN_USER for that.
    - Two callers want to update ptes, give them a PIN_UPDATE for that.

    Of course we still want to avoid double-binding, but that should be
    taken care of:
    - A ppgtt vma will only ever see PIN_USER, so no issue with
      double-binding.
    - A ggtt vma with aliasing ppgtt needs both types of binding, and we
      track that properly now.
    - A ggtt vma without aliasing ppgtt could be bound twice. In the
      lower-level ->bind_vma functions hence unconditionally set
      GLOBAL_BIND when writing the ggtt ptes.

    There's still a bit room for cleanup, but that's for follow-up
    patches.

    v2: Fixup fumbles.

    v3: s/PIN_EXECBUF/PIN_USER/ for clearer meaning, suggested by Chris.

    Cc: Chris Wilson <chris at chris-wilson.co.uk>
    Reviewed-by: Mika Kuoppala <mika.kuoppala at intel.com>
    Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>

output:
dEQP Core GL-CTS-2.0 (0x0052484b) starting..
  target implementation = 'X11'

Test case
'ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_minifying_blit'..
INFO:framebuffer_blit_functionality_minifying_blit:BEGIN
------------------------------------------------------------------
INFO:framebuffer_blit_functionality_minifying_blit:BLITTING in
GL_COLOR_ATTACHMENT0 from GL_TEXTURE_2D to GL_TEXTURE_2D (different buffers)
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf1
color [1.000000,0.000000,0.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf1
color [0.000000,1.000000,0.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf1
color [0.000000,0.000000,1.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf1
color [1.000000,1.000000,1.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf2
color [0.000000,0.000000,0.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf3
depth [0.250000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf3
depth [0.500000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf3
depth [0.750000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf3
depth [1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf12
depth [0.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf3
stencil [1]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf3
stencil [2]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf3
stencil [3]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf3
stencil [4]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf12
stencil [0]
INFO:framebuffer_blit_functionality_minifying_blit:BLIT
blt_src_rect=[0,0,64,64] blt_dst_rect=[0,0,32,32]
INFO:framebuffer_blit_functionality_minifying_blit:END
--------------------------------------------------------------------
INFO:framebuffer_blit_functionality_minifying_blit:BEGIN
------------------------------------------------------------------
INFO:framebuffer_blit_functionality_minifying_blit:BLITTING in
GL_COLOR_ATTACHMENT1 from GL_TEXTURE_2D to GL_TEXTURE_2D (different buffers)
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf32
color [1.000000,0.000000,0.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf32
color [0.000000,1.000000,0.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf32
color [0.000000,0.000000,1.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf32
color [1.000000,1.000000,1.000000,1.000000]
ERROR:framebuffer_blit_functionality_minifying_blit:ERROR: expected
RGBA[255,255,255,255] but got RGBA[0,0,0,0]
ERROR:framebuffer_blit_functionality_minifying_blit:checkColor:
/GFX/Test/Ogles3conform/ogles3conform/GTF_ES/glsl/GTF/Source/GL3Tests/GTFTestFramebufferBlit.c:1355:
expected GL_TRUE but got ZERO/GL_FALSE/GL_NO_ERROR
ERROR:framebuffer_blit_functionality_minifying_blit:ERROR: Cleanup and continue
to next configuration
INFO:framebuffer_blit_functionality_minifying_blit:BEGIN
------------------------------------------------------------------
INFO:framebuffer_blit_functionality_minifying_blit:BLITTING in
GL_COLOR_ATTACHMENT2 from GL_TEXTURE_2D to GL_TEXTURE_2D (different buffers)
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf33
color [1.000000,0.000000,0.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf33
color [0.000000,1.000000,0.000000,1.000000]
INFO:framebuffer_blit_functionality_minifying_blit:verifying initial texbuf33
color [0.000000,0.000000,1.000000,1.000000]
intel_do_flush_locked failed: Input/output error


dmesg:
[  160.815905] [drm] stuck on render ring
[  160.840233] [drm] GPU HANG: ecode 8:0:0xbe5fffff, in glcts [4333], reason:
Ring hung, action: reset
[  160.840239] [drm] GPU hangs can indicate a bug anywhere in the entire gfx
stack, including userspace.
[  160.840242] [drm] Please file a _new_ bug report on bugs.freedesktop.org
against DRI -> DRM/Intel
[  160.840245] [drm] drm/i915 developers can then reassign to the right
component if it's not a kernel issue.
[  160.840248] [drm] The gpu crash dump is required to analyze gpu hangs, so
please always attach it.
[  160.840252] [drm] GPU crash dump saved to /sys/class/drm/card0/error
[  160.840311] [drm:i915_reset_and_wakeup] resetting chip
[  160.842720] drm/i915: Resetting chip after gpu hang
[  160.842814] [drm:gen8_init_common_ring] Execlists enabled for render ring
[  160.842822] [drm:gen8_init_common_ring] Execlists enabled for bsd ring
[  160.842828] [drm:gen8_init_common_ring] Execlists enabled for blitter ring
[  160.842833] [drm:gen8_init_common_ring] Execlists enabled for video
enhancement ring
[  162.816919] [drm:cherryview_enable_rps] GT fifo had a previous error 1080000
[  162.819115] [drm:cherryview_enable_rps] GPLL enabled? yes
[  162.819121] [drm:cherryview_enable_rps] GPU status: 0x00004010
[  162.819127] [drm:cherryview_enable_rps] current GPU freq: 640 MHz (64)
[  162.819131] [drm:cherryview_enable_rps] setting GPU freq to 400 MHz (40)
[  168.819380] [drm] stuck on render ring
[  168.843718] [drm] GPU HANG: ecode 8:0:0x00200000, in glcts [4333], reason:
Ring hung, action: reset
[  168.843812] [drm:i915_reset_and_wakeup] resetting chip
[  168.846218] drm/i915: Resetting chip after gpu hang


==Reproduce steps==
---------------------------- 
1. xinit&
2. ./glcts
--deqp-case=ES3-CTS.gtf.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_minifying_blit
 --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1
--deqp-surface-type=window --deqp-gl-config-id=14

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20150427/e9a36df4/attachment-0001.html>


More information about the intel-gfx-bugs mailing list