[Mesa-dev] V3 On disk shader cache for i965 (Now with real world results!)

Grazvydas Ignotas notasas at gmail.com
Wed Jul 13 20:51:29 UTC 2016

On Wed, Jul 13, 2016 at 2:56 AM, Timothy Arceri
<timothy.arceri at collabora.com> wrote:
> On Sat, 2016-07-09 at 20:21 +0300, Grazvydas Ignotas wrote:
>> I think I still have some more:
>> - running 32bit program after 64bit version of the same thing (or
>> vice
>> versa) leads to segfaults and assert hits. Probably easiest to build
>> 32bit and 64bit apitrace and play some traces.
>> - a trace from comment 2 of bug 96624 doesn't seem to render on
>> cache.
> I can't seem to reproduce this. I created some traces using the 32-bit
> and 64-bit versions of The Talos Principle but they seems to run with
> no issues. I've pushed updates to the shader-cache branch maybe I fixed
> something.

Still crashes here. What I do:
1. build 64bit and 32bit versions of apitrace
2. get the trace from bug 96425
3. rm -rf ~/.cache/mesa/
4. MESA_GLSL_CACHE_ENABLE=1 build64/glretrace -b Talos_flicker2.trace
5. MESA_GLSL_CACHE_ENABLE=1 build32/glretrace -b Talos_flicker2.trace

Program received signal SIGSEGV, Segmentation fault.
0xf751b8cb in read_atomic_buffers (prog=<optimized out>,
metadata=0xffffba34) at glsl/shader_cache.cpp:405
405                *stage_buff_list[j] = &prog->AtomicBuffers[i];
(gdb) bt
#0  0xf751b8cb in read_atomic_buffers (prog=<optimized out>,
metadata=0xffffba34) at glsl/shader_cache.cpp:405
#1  shader_cache_read_program_metadata (ctx=0xf6d18020,
prog=0x88ac610) at glsl/shader_cache.cpp:1283
#2  0xf748eeaf in link_shaders (ctx=0xf6d18020, prog=0x88ac610,
is_cache_fallback=false) at glsl/linker.cpp:4541
#3  0xf73d289c in _mesa_glsl_link_shader (ctx=0xf6d18020,
prog=0x88ac610, is_cache_fallback=false)
    at program/ir_to_mesa.cpp:3073
#4  0xf72c682a in _mesa_link_program (ctx=0xf6d18020,
shProg=0x88ac610) at main/shaderapi.c:1099
#5  0xf72c7e47 in _mesa_LinkProgram (programObj=14) at main/shaderapi.c:1603
#6  0x08264000 in _get_glLinkProgram(unsigned int) ()
#7  0x0810ef17 in retrace_glLinkProgram(trace::Call&) ()


More information about the mesa-dev mailing list