Bug 90109

Summary: [SNB+ Bisected]Ogles3conform ES3-CTS.shaders.uniform_block.random.basic_arrays.3 fails
Product: Mesa Reporter: lu hua <huax.lu>
Component: Drivers/DRI/i965Assignee: Tapani Pälli <lemody>
Status: VERIFIED FIXED QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: major    
Priority: high CC: idr
Version: git   
Hardware: All   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: fix attempt

Description lu hua 2015-04-20 02:52:32 UTC
System Environment:
--------------------------
Platform: BDW
Libdrm:		(master)libdrm-2.4.60-34-g0d78b37b1cac304ce5e84d1207f0a43abd29c000
Mesa:		(master)b2e871bd484db229978cfe4b7efa12dfd79067a8
Xserver:	(master)xorg-server-1.17.0-76-gb1029716e41e252f149b82124a149da180607c96
Xf86_video_intel:(master)2.99.917-275-g7eaf593640d4479f850227252fd793bcb55be8d3
Libva:		(master)062a63932c0f1439aa587aa986bbcfb758ff38f2
Libva_intel_driver:(master)890f538f62707ec07a6accdb65bafcaffc941bb1
Kernel:   (drm-intel-nightly)d600654ab94b325f253e267422dcf60302120ea0

Bug detailed description:
-----------------------------
It fails on SNB+ platforms with mesa master branch, works well on 10.5 branch.
Following cases also fail:
ES3-CTS.gtf.GL3Tests.uniform_buffer_object.uniform_buffer_object_getactiveuniformsiv_for_nonexistent_uniform_indices
ES3-CTS.shaders.uniform_block.random.all_per_block_buffers.14
ES3-CTS.shaders.uniform_block.random.all_shared_buffer.2
ES3-CTS.shaders.uniform_block.random.basic_arrays.3
ES3-CTS.shaders.uniform_block.random.basic_arrays.5
ES3-CTS.shaders.uniform_block.random.basic_instance_arrays.1
ES3-CTS.shaders.uniform_block.random.basic_types.6
ES3-CTS.shaders.uniform_block.random.nested_structs.8
ES3-CTS.shaders.uniform_block.random.nested_structs_arrays.6
ES3-CTS.shaders.uniform_block.random.scalar_types.6
ES3-CTS.shaders.uniform_block.random.vector_types.9
ES3-CTS.shaders.uniform_block.single_nested_struct.per_block_buffer_packed
ES3-CTS.shaders.uniform_block.single_nested_struct_array.per_block_buffer_packed

Bisect shows:34df5ebd778fd3027db0f380eab71a95cfa298c0 is the first bad commit
commit 34df5ebd778fd3027db0f380eab71a95cfa298c0
Author:     Tapani Pälli <tapani.palli@intel.com>
AuthorDate: Thu Mar 12 07:58:48 2015 +0200
Commit:     Tapani Pälli <tapani.palli@intel.com>
CommitDate: Thu Apr 16 07:55:57 2015 +0300

    mesa: mesa_bufferiv utility function for buffer objects

    Patch adds new function 'mesa_bufferiv' and refactors existing
    GetActiveUniformBlockiv and GetActiveAtomicCounterBufferiv to
    use it.

    corresponding Piglit tests:
       arb_uniform_buffer_object*
       arb_shader_atomic_counters*

    (Many tests hit the corresponding queries.)

    Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
    Reviewed-by: Martin Peres <martin.peres@linux.intel.com>


output:
dEQP Core GL-CTS-2.0 (0x0052484b) starting..
  target implementation = 'X11'

Test case 'ES3-CTS.shaders.uniform_block.random.basic_arrays.3'..
Vertex compile time = 6.282000 ms
Fragment compile time = 3.157000 ms
Link time = 74.806999 ms
  Fail (Invalid layout)

DONE!

Test run totals:
  Passed:        0/1 (0.00%)
  Failed:        1/1 (100.00%)
  Not supported: 0/1 (0.00%)
  Warnings:      0/1 (0.00%)

returncode: 0
result: fail

Reproduce steps:
---------------------------- 
1. xinit
2. ./glcts --deqp-case=ES3-CTS.shaders.uniform_block.random.basic_arrays.3
Comment 1 shuo.wang 2015-04-20 06:27:37 UTC
Update the reproduce step:
1. Xinit&
2. /GFX/Test/Ogles3conform/ogles3conform/build-es/cts/glcts --deqp-archive-dir=/GFX/Test/Ogles3conform/ogles3conform/build-es/cts/ --deqp-case=ES3-CTS.shaders.uniform_block.random.basic_arrays.3 --deqp-surface-width=64 --deqp-surface-height=64 --deqp-base-seed=1 --deqp-surface-type=window --deqp-gl-config-id=14
Comment 2 Tapani Pälli 2015-04-20 12:23:49 UTC
For some reason there is difference in GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS count (known as 'GL_NUM_ACTIVE_VARIABLES'). Will figure out why this happens.
Comment 3 Tapani Pälli 2015-04-20 12:43:07 UTC
Created attachment 115223 [details] [review]
fix attempt

this should fix most of the tests, could you try which are still failing?
Comment 4 Tapani Pälli 2015-04-20 12:51:46 UTC
(In reply to Tapani Pälli from comment #3)
> Created attachment 115223 [details] [review] [review]
> fix attempt
> 
> this should fix most of the tests, could you try which are still failing?

in my testing it actually fixed all of them, will send patch to the list
Comment 5 Tapani Pälli 2015-04-20 13:17:04 UTC
(In reply to Tapani Pälli from comment #4)
> (In reply to Tapani Pälli from comment #3)
> > Created attachment 115223 [details] [review] [review] [review]
> > fix attempt
> > 
> > this should fix most of the tests, could you try which are still failing?
> 
> in my testing it actually fixed all of them, will send patch to the list

uh, now I see some are failing with '--deqp-base-seed=1', right will take more look into this.
Comment 6 Tapani Pälli 2015-04-21 05:31:06 UTC
Here's the fix to make all tests work:

http://lists.freedesktop.org/archives/mesa-dev/2015-April/082264.html
Comment 7 lu hua 2015-04-21 06:14:25 UTC
(In reply to Tapani Pälli from comment #6)
> Here's the fix to make all tests work:
> 
> http://lists.freedesktop.org/archives/mesa-dev/2015-April/082264.html

Fixed by this patch.
Comment 8 Tapani Pälli 2015-04-21 11:41:47 UTC
pushed to master
Comment 9 lu hua 2015-04-23 03:03:35 UTC
ES3-CTS.gtf.GL3Tests.uniform_buffer_object.uniform_buffer_object_getactiveuniformsiv_for_nonexistent_uniform_indices is a separate bug(report bug 90149).

This bug fixed.

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.