[webkit-efl] How to run layout tests with ATI and NVidia drivers
Thiago Marcos P. Santos
tmpsantos at gmail.com
Tue Nov 13 11:04:12 PST 2012
tl;dr version:
LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/mesa/
./Tools/Scripts/run-webkit-tests --efl
Full version:
Some developers have been experiencing crashes when running layout
tests on computers equipped with ATI and nVidia cards. The crash
happens when evas tries to compile a shader:
STDOUT: <empty>
STDERR: ERR<4668>:evas-gl_common evas_gl_shader.c:1039
_evas_gl_common_shader_program_source_init() Abort compile of shader
vert (rect): #ifdef GL_ES
STDERR: precision highp float;
...
Full backtrace here -> http://pastie.org/pastes/5371448/text
The interesting thing is that we use Xvfb + LLVMPipe (software GL in a
short) when running the tests, so the GPU should be irrelevant: but
only in theory. I noticed that when running glxinfo inside the XVfb, I
was getting the client glx vendor string ATI. Kangil also hinted that
on his computer, after removing the nVidia drivers, he had no crashes
anymore (but X was falling back to vesa).
$ DISPLAY=:555 glxinfo |grep 'client glx vendor'
client glx vendor string: ATI
Ubuntu links with the libGL provided by the graphics card vendor by default:
$ ldd /usr/bin/glxinfo |grep libGL
libGL.so.1 => /usr/lib/fglrx/libGL.so.1 (0xb7646000)
For running the layout tests using LLVMPipe, we need to use the mesa
libGL. In order to do that, we can play some tricks with
LD_LIBRARY_PATH:
$ LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/mesa/
./Tools/Scripts/run-webkit-tests --efl
This is only needed by the layout tests script (because it spawns a
Xvfb). MiniBrowser should run normally because it will connect to your
standard Xorg instance with GPU-based GL.
Cheers,
More information about the webkit-efl
mailing list