[Mesa-dev] SandyBridge issue likely related to fast color clears using meta operations

Samuel Iglesias Gonsálvez siglesias at igalia.com
Tue Sep 2 09:16:01 PDT 2014


Hello,

Two weeks ago, Iago and myself sent a batch of patches that added
geometry shader support for SandyBridge [0].

Recently, we rebased our patches against master [1] and found
that some things are not working properly any more. Particularly, we
have plenty of cases where we only get a black screen when using a
geometry shader, and in these cases it seems as if some outputs of the
geometry shader got "lost" by the time they become inputs in the
fragment shader (some input varyings in the fragment shader that come
from the outputs of the geometry seem to be zeroed). The values we
output in the geometry shader are correct though, since they are
correctly captured by transform feedback.

A bisect shows that the commit that introduced this problem is
2f28a0dc231 i965: Implement fast color clears using meta operations [2].

Reverting this commit fixes the problem for us. The revert also fixes
piglit's bin/gl-3.2-layered-rendering-clear-color* tests in SandyBridge
[3].

So the question is whether the commit mentioned above introduces a
regression that should be fixed somewhere or if our code needs to be
updated to adapt to changes introduced by that commit in some way.

Best regards,

Sam

[0]
http://lists.freedesktop.org/archives/mesa-dev/2014-August/065692.html

[1]
https://github.com/samuelig/mesa/tree/gs-support-snb-for-submission-02092014

[2]
commit 2f28a0dc23165123cf1e8b5942acad37878edd8a
Author: Kristian Høgsberg <krh at bitplanet.net>
Date:   Mon Jul 7 16:44:58 2014 -0700

    i965: Implement fast color clears using meta operations
    
    This patch uses the infrastructure put in place by previous patches
    to implement fast color clears and replicated color clears in terms 
    of meta operations.
    
    This works all the way back to gen7 where fast clear was introduced 
    and adds support for fast clear on gen8.  It replaces the blorp path
    completely and improves on a few cases.  Layered clears are now done
    using instanced rendering and multiple render-target clears use a
    MRT shader with rep16 writes.
    
    Signed-off-by: Kristian Høgsberg <krh at bitplanet.net>
    Acked-by: Kenneth Graunke <kenneth at whitecape.org>

[3]
http://people.igalia.com/siglesias/mesa/all-gs-patches-v2/changes.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140902/9477b072/attachment.sig>


More information about the mesa-dev mailing list