Summary: | [IVB/HSW] ogl-samples: gl-320-draw-instanced failure | ||
---|---|---|---|
Product: | Mesa | Reporter: | meng <mengmeng.meng> |
Component: | Drivers/DRI/i965 | Assignee: | Ian Romanick <idr> |
Status: | CLOSED NOTOURBUG | QA Contact: | Intel 3D Bugs Mailing List <intel-3d-bugs> |
Severity: | normal | ||
Priority: | medium | CC: | eero.t.tamminen, jianx.zhou |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
meng
2014-03-20 11:03:37 UTC
Did a bit of digging here: The vertex shader contains code to override the default qualifiers for uniform blocks. layout(std140, column_major) uniform; However, the fragment shader does not. So, when we compile the vertex shader, the uniform blocks get packing set to GLSL_INTERFACE_PACKING_STD140. However, when we compile the fragment shader, they get packing set to GLSL_INTERFACE_PACKING_SHARED. This information is captured in the types, so the two shaders get different glsl_types for the otherwise identical interfaces, and interstage_match() rejects the shaders. Anyway, that's what's going on. I haven't looked at specs to determine whether we have a bug, or the demo has a bug. Please test again on master, this works at least for me on IVB (9f7efa7). I did not bisect why. Hi, I found that: update ogl-samples version to git-144867d, the issue should be fixed. BTW, the issue could still be reproduced on IVB (9f7efa7) if using the ogl-samples git-1ced5a15c. Yep, the test has been fixed to have same layout qualifiers on both shaders. |
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.