public inbox for dri-devel@lists.freedesktop.org
 help / color / mirror / Atom feed
From: bugzilla-daemon@freedesktop.org
To: dri-devel@lists.freedesktop.org
Subject: [Bug 74853] New: [r300g, bisected] some piglit fbo tests segfault
Date: Tue, 11 Feb 2014 19:33:48 +0000	[thread overview]
Message-ID: <bug-74853-502@http.bugs.freedesktop.org/> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 4140 bytes --]

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

          Priority: medium
            Bug ID: 74853
          Keywords: regression
                CC: maraeo@gmail.com
          Assignee: dri-devel@lists.freedesktop.org
           Summary: [r300g, bisected] some piglit fbo tests segfault
          Severity: normal
    Classification: Unclassified
                OS: All
          Reporter: pavel.ondracka@email.cz
          Hardware: Other
            Status: NEW
           Version: git
         Component: Drivers/Gallium/r300
           Product: Mesa

Some affected tests:
fbo-missing-attachment-blit es2 from -fbo -auto
fbo-missing-attachment-blit es2 to -fbo -auto
fbo-missing-attachment-clear -auto
framebuffer-blit-levels draw depth -fbo -auto
framebuffer-blit-levels draw stencil -fbo -auto
and others...

First bad commit:
commit 9baa45f78b8ca7d66280e36009b6a685055d7cd6
Author: Marek Olšák <marek.olsak@amd.com>
Date:   Wed Jan 8 01:09:15 2014 +0100

    st/mesa: bind NULL colorbuffers as specified by glDrawBuffers

    An example why it is required:

        Let's say there's a fragment shader writing to gl_FragData[0..1].
        The user calls: glDrawBuffers(2, {GL_NONE, GL_COLOR_ATTACHMENT0});

        That means gl_FragData[0] is unused and gl_FragData[1] is written
        to GL_COLOR_ATTACHMENT0.

    st/mesa was skipping the GL_NONE draw buffer, therefore gl_FragData[0]
    was written to GL_COLOR_ATTACHMENT0, which was wrong.

    This commit fixes it, but drivers must also be fixed not to crash when
    binding NULL colorbuffers. There is also a new set of piglit tests for
this.

    The MSAA state also had to be fixed not to crash when reading fb->cbufs[0].

    Reviewed-by: Brian Paul <brianp@vmware.com>


./framebuffer-blit-levels draw depth -fbo -auto
Program received signal SIGSEGV, Segmentation fault.
0xb6ca230f in r300_set_framebuffer_state (pipe=0x80880e8, state=0x84bc9a0)
    at r300_state.c:1020
1020            r300->screen->cmask_resource == state->cbufs[0]->texture;
(gdb) bt
#0  0xb6ca230f in r300_set_framebuffer_state (pipe=0x80880e8, state=0x84bc9a0)
    at r300_state.c:1020
#1  0xb6affe43 in cso_set_framebuffer (ctx=0x84d16f0, fb=0x84bc9a0)
    at cso_cache/cso_context.c:649
#2  0xb69d0d84 in update_framebuffer_state (st=0x84bbf30)
    at state_tracker/st_atom_framebuffer.c:125
#3  0xb69ce0d3 in st_validate_state (st=0x84bbf30)
    at state_tracker/st_atom.c:202
#4  0xb69d7301 in st_BlitFramebuffer (ctx=0x84787d8, srcX0=0, srcY0=0, 
    srcX1=128, srcY1=128, dstX0=0, dstY0=0, dstX1=128, dstY1=128, mask=256, 
    filter=9728) at state_tracker/st_cb_blit.c:94
#5  0xb6868fb3 in _mesa_BlitFramebuffer (srcX0=0, srcY0=0, srcX1=128, 
    srcY1=128, dstX0=0, dstY0=0, dstX1=128, dstY1=128, mask=256, filter=9728)
    at main/blit.c:509
#6  0xb7eb51ff in stub_glBlitFramebuffer (srcX0=0, srcY0=0, srcX1=128, 
    srcY1=128, dstX0=0, dstY0=0, dstX1=128, dstY1=128, mask=256, filter=9728)
    at /home/Paulie/piglit/tests/util/generated_dispatch.c:1724
#7  0x080498c3 in piglit_display ()
    at
/home/Paulie/piglit/tests/spec/arb_framebuffer_object/framebuffer-blit-levels.c:372
#8  0xb7eb0540 in display ()
    at
/home/Paulie/piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:60
#9  0xb7fb88ec in fghcbDisplayWindow () from /lib/libglut.so.3
#10 0xb7fbc507 in fgEnumWindows () from /lib/libglut.so.3
#11 0xb7fb8e6e in glutMainLoopEvent () from /lib/libglut.so.3
#12 0xb7fb9657 in glutMainLoop () from /lib/libglut.so.3
#13 0xb7eb0799 in run_test (gl_fw=0xb7fa1b20 <glut_fw>, argc=3, 
    argv=0xbffff1e4)
    at
/home/Paulie/piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:142
#14 0xb7eae59c in piglit_gl_test_run (argc=3, argv=0xbffff1e4, 
    config=0xbffff108)
    at /home/Paulie/piglit/tests/util/piglit-framework-gl.c:191
#15 0x08048df9 in main (argc=3, argv=0xbffff1e4)
    at
/home/Paulie/piglit/tests/spec/arb_framebuffer_object/framebuffer-blit-levels.c:63

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 5790 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

             reply	other threads:[~2014-02-11 19:33 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-11 19:33 bugzilla-daemon [this message]
2014-04-24 23:46 ` [Bug 74853] [r300g, bisected] some piglit fbo tests segfault bugzilla-daemon
2014-04-24 23:46 ` bugzilla-daemon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-74853-502@http.bugs.freedesktop.org/ \
    --to=bugzilla-daemon@freedesktop.org \
    --cc=dri-devel@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox