System Environment: -------------------------- Arch: i386 Platform: Sandybridge Libdrm: (master)2.4.32 Mesa: (master)03f8a97d718502f60d16000aead251d88a751149 Xserver: (master)xorg-server-1.12.0-1-ga615b90cab7569fae9d123e4da1d3373c871d84b Xf86_video_intel:(master)2.18.0-120-ge31d9dacafe060dc86de801114b475fdd0142eb6 Libva: (vaapi-ext)f8be4a5477e58c4a27170f0c87eeedac8de60aef Libva_intel_driver:(vaapi-ext)5d56bdbe9eca11138fe63d00f970cc857e82cca2 Kernel: (drm-intel-next-queued) fa37d39e4c6622d80bd8061d600701bcea1d6870 Bug detailed description: ----------------------------- It fails on sandybridge with mesa master branch.It doesn't happen on mesa 8.0 branch.It doesn't happen on ivybridge, ironlake and pineview. Following cases also fail and hava same commit. conditional_render(basic.wait.core) conditional_render(basic.typical) conditional_render(advanced.fbo.renderOnFBO) conditional_render(advanced.fbo.queryAndRenderOnFBO) Bisect shows:31866308fcf989df992ace28b5b986c3d3770e90 is the first bad commit commit 31866308fcf989df992ace28b5b986c3d3770e90 Author: Eric Anholt <eric@anholt.net> Date: Mon Dec 19 10:53:10 2011 -0800 i965/fs: Jump from discard statements to the end of the program when done. From the GLSL 1.30 spec: The discard keyword is only allowed within fragment shaders. It can be used within a fragment shader to abandon the operation on the current fragment. This keyword causes the fragment to be discarded and no updates to any buffers will occur. Control flow exits the shader, and subsequent implicit or explicit derivatives are undefined when this control flow is non-uniform (meaning different fragments within the primitive take different control paths). v2: Don't emit the final HALT if no other HALTs were emitted. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> (v1) Reproduce steps: ---------------- 1. start X 2. ./oglconform -z -suite all -v 2 -D 117 -test conditional_render basic.wait.nv
Case 'conditional_render(advanced.fbo.queryOnFBO)' also fails and have same commit.
Ian, Eric?
I'm guessing this is kernel changes again and a bad bisect in mesa, since this commit got backed out for other reasons and the problem is supposedly still around. http://lists.freedesktop.org/archives/intel-gfx/2012-July/019344.html
Hua to confirm if this still fails.
It still fails on following environment: Mesa: (master)8734584952ea257d53ce421959bd9706345f221f Kernel: (drm-intel-next-queued) ab3951eb74e7c33a2f5b7b64d72e82f1eea61571
Conditional rendering uses occlusion queries. Occlusion queries were not working until Eric's recent kernel patch. See bug #52932. It's passing for me with that patch applied. From the other bug report, Daniel said: Should be fixed on -fixes with: commit e844b990b1df9242bb91b7d490552f3198946838 Author: Eric Anholt <eric@anholt.net> Date: Tue Jul 31 15:35:01 2012 -0700 drm/i915: Don't forget to apply SNB PIPE_CONTROL GTT workaround.
Can' find out "drm/i915: Don't forget to apply SNB PIPE_CONTROL GTT workaround." on -queued kernel commit:ab3951eb74e7.
Verified. Fixed on Mesa master a3d9d7ec79d6f7205fab2324e47d8ea185431de0 and -queued Kernel cd7988eea561a70a4f98e431c1395f913672d626
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.