[Mesa-dev] [Bug 94295] [swrast] piglit shader_runner fast_color_clear/all-colors regression

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Feb 26 11:08:31 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=94295

--- Comment #2 from Plamena Manolova <plamena.manolova at intel.com> ---
(In reply to Vinson Lee from comment #0)
> mesa: d1509a5848dee57b933139ad2610e99ae09cb5ec (master 11.3.0-devel)
> 
> $ ./bin/shader_runner tests/fast_color_clear/all-colors.shader_test -auto
> Segmentation fault (core dumped)
> 
> 
> (gdb) bt
> #0  find_empty_block (prog=0xf2ae10, uniform=0xf2f030) at
> glsl/link_uniforms.cpp:1051
> #1  link_assign_uniform_locations (prog=prog at entry=0xf2ae10,
> boolean_true=1065353216,
> num_explicit_uniform_locs=num_explicit_uniform_locs at entry=4294967295, 
>     max_uniform_locs=98304) at glsl/link_uniforms.cpp:1238
> #2  0x00007fd99ef73db9 in link_shaders (ctx=ctx at entry=0x7fd9a4a99010,
> prog=prog at entry=0xf2ae10) at glsl/linker.cpp:4566
> #3  0x00007fd99eecb3fb in _mesa_glsl_link_shader
> (ctx=ctx at entry=0x7fd9a4a99010, prog=prog at entry=0xf2ae10) at
> program/ir_to_mesa.cpp:3036
> #4  0x00007fd99edd1b8a in link_program (ctx=0x7fd9a4a99010,
> program=<optimized out>) at main/shaderapi.c:1048
> #5  0x00007fd9a45dafec in stub_glLinkProgram (program=3) at
> piglit/tests/util/piglit-dispatch-gen.c:32599
> #6  0x000000000040776a in link_and_use_shaders () at
> piglit/tests/shaders/shader_runner.c:1042
> #7  0x000000000040e02c in piglit_init (argc=2, argv=0x7ffd6815d008) at
> piglit/tests/shaders/shader_runner.c:3292
> #8  0x00007fd9a464b7fb in run_test (gl_fw=0xd34c20, argc=2,
> argv=0x7ffd6815d008)
>     at piglit/tests/util/piglit-framework-gl/piglit_winsys_framework.c:73
> #9  0x00007fd9a462ff6a in piglit_gl_test_run (argc=2, argv=0x7ffd6815d008,
> config=0x7ffd6815cec0)
>     at piglit/tests/util/piglit-framework-gl.c:199
> #10 0x0000000000405b50 in main (argc=2, argv=0x7ffd6815d008) at
> piglit/tests/shaders/shader_runner.c:54
> (gdb) l
> 1046	find_empty_block(struct gl_shader_program *prog,
> 1047	                 struct gl_uniform_storage *uniform)
> 1048	{
> 1049	   const unsigned entries = MAX2(1, uniform->array_elements);
> 1050	
> 1051	   foreach_list_typed(struct empty_uniform_block, block, link,
> 1052	                      &prog->EmptyUniformLocations) {
> 1053	      /* Found a block with enough slots to fit the uniform */
> 1054	      if (block->slots == entries) {
> 1055	         unsigned start = block->start;
> (gdb) print block
> $1 = (empty_uniform_block *) 0x0
> (gdb) print prog->EmptyUniformLocations
> $2 = {head = 0x0, tail = 0x0, tail_pred = 0x0}
> 
> 
> 65dfb3048e8291675ca33581aeff8921f7ea509d is the first bad commit
> commit 65dfb3048e8291675ca33581aeff8921f7ea509d
> Author: Plamena Manolova <plamena.manolova at intel.com>
> Date:   Thu Feb 11 15:00:02 2016 +0200
> 
>     compiler/glsl: Fix uniform location counting.
>     
>     This patch moves the calculation of current uniforms to
>     link_uniforms, which makes use of UniformRemapTable which
>     stores all the reserved uniform locations.
>     
>     Location assignment for implicit uniforms now tries to use
>     any gaps left in the table after the location assignment
>     for explicit uniforms. This gives us more space to store more
>     uniforms.
>     
>     Patch is based on earlier patch with following changes/additions:
>     
>        1: Move the counting of explicit locations to
>           check_explicit_uniform_locations and then pass
>           the number to link_assign_uniform_locations.
>        2: Count the number of empty slots in UniformRemapTable
>           and store them in a list_head.
>        3: Try to find an empty slot for implicit locations from
>           the list, if that fails resize UniformRemapTable.
>     
>     Fixes following CTS tests:
>        ES31-CTS.explicit_uniform_location.uniform-loc-mix-with-implicit-max
>       
> ES31-CTS.explicit_uniform_location.uniform-loc-mix-with-implicit-max-array
>     
>     Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
>     Signed-off-by: Plamena Manolova <plamena.manolova at intel.com>
>     Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
>     Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93696
> 
> :040000 040000 5848c556c369c2c798c1c1e036c70c740b56a97a
> 25915fac71a54954aafd0139a55045ba394969e6 M	src
> bisect run success

Hi Vinson,
Could you verify whether this patch fixes this issue for you?

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160226/29911644/attachment-0001.html>


More information about the mesa-dev mailing list