Bug 44561 - Piglit: spec/glsl-1.10/execution/interpolation/interpolation-none-gl_*-vertex fail
Summary: Piglit: spec/glsl-1.10/execution/interpolation/interpolation-none-gl_*-vertex...
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-01-07 10:26 UTC by Kai
Modified: 2012-01-23 05:07 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Kai 2012-01-07 10:26:34 UTC
A regression for all spec/glsl-1.10/execution/interpolation/interpolation-none-gl_*-vertex tests was introduced between master/39464489 and master/78402613. I didn't have time to bisect this yet, but maybe you know already which commit might be the culprit.

Used stack:
libdrm: 2.4.30-1
Mesa: master/78402613
Linux: 3.2
DDX: 6.14.3 + commits from Git up until and including master/ae45d7e6
X.org: 1.11.2.902 (1.11.3 RC 2)
Hardware: 1002:9553

Detailed test results available from <http://dev.carbon-project.org/misc/piglit/regressions.html>
Comment 1 Vinson Lee 2012-01-07 12:55:10 UTC
a103c61d278b7f56208818c4b949c408c00286fa is the first bad commit
commit a103c61d278b7f56208818c4b949c408c00286fa
Author: Dave Airlie <airlied@redhat.com>
Date:   Wed Jan 4 11:49:26 2012 +0000

    st/mesa: add support for clip vertex.
    
    We need to pass the pre-projection matrix clip planes into the driver,
    instead of the post for the case we have a vertex shader that writes clip
    vertex.
    
    Signed-off-by: Dave Airlie <airlied@redhat.com>

:040000 040000 765df24061b18f3b4f43e28fc2db3c0b12ae75f2 bcb7b49415879100006fc9ceb5f43bb1c4fd3596 Msrc
bisect run success
Comment 2 Christoph Bumiller 2012-01-10 08:26:03 UTC
Like I already mentioned on ML, i915g isn't using the ClipVertex for the clipping calculation, but Position (ClipVertex didn't exist before, thus whenever it was not equal to gl_Position things wouldn't have worked properly). 

The reason it worked before lies in the nature of the test.

The transformation done to the plane coefficients is the inverse of the transformation from gl_ClipVertex and gl_Position; the prior is correctly omitted now if a vertex shader is bound in OpenGL.
Comment 3 Kai 2012-01-10 09:11:19 UTC
(In reply to comment #2)
So do I understand you correctly, that this bug is then no regression for r600g and i915g (I'm seeing this on r600g)? If so, the "regression" keyword should probably be deleted.
Comment 4 Christoph Bumiller 2012-01-10 09:24:14 UTC
(In reply to comment #3)
> (In reply to comment #2)
> So do I understand you correctly, that this bug is then no regression for r600g
> and i915g (I'm seeing this on r600g)? If so, the "regression" keyword should
> probably be deleted.

Correct, it's a glsl 1.2 feature that's not been implemented on these drivers yet.
Comment 5 Stephane Marchesin 2012-01-10 10:33:00 UTC
I don't think it's a bug in i915g proper, since we don't handle vertex shaders in there, or any vertex stuff for that matter, but instead rely on draw. I'll try Dave'd draw patches later and see if that fixes things.
Comment 6 Stephane Marchesin 2012-01-11 15:16:09 UTC
It should be fixed in git, please retest and close.
Comment 7 Kai 2012-01-12 07:58:36 UTC
(In reply to comment #6)
> It should be fixed in git, please retest and close.

It isn't for my system (see comment #0). I tested master/87118d84 and as can be seen from e.g. <http://dev.carbon-project.org/misc/piglit/20120112git87118d84/test_spec__glsl110__execution__interpolation__interpolationnonegl_BackColorflatvertex.html> it still fails.
Comment 8 Kai 2012-01-23 05:07:15 UTC
Today's Piglit run (master/4c84819a) shows this as fixed on my r600g-powered hardware → closing.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.