Re: mesa3d with llvm support
Muthukumar S <[email protected]>
| Newsgroups | gmane.comp.video.mesa3d.user |
|---|---|
| Message-ID | <[email protected]> |
Hi Chai Can you tell me which llvm version are you using ? When EGL_DRIVERS_PATH is set, it should be prepended to the search path. Did you have the variable set when running the demo? I did make install ,hence below paths contain the same libraries. /usr/local/lib/egl /home/muthu/work/game/gallium/mesa-master-llvm-gcc-egl/lib/egl/ thanks Muthukumar On Wed, Jan 12, 2011 at 4:38 PM, Chia-I Wu <[email protected]> wrote: > On Wed, Jan 12, 2011 at 6:25 PM, Muthukumar S <[email protected]> wrote: > > Hi All, > > Thanks for your reply, > > I tried as u said by giving the GALLIUM_DRIVER as softpipe and now > glxgears > > was working fine.As u said the problem is in gallium driver . > > Now again i tried by setting GALLIUM_DRIVER=llvmpipe ,and i try to run > > "glxgears" from opengles1 sample but its getting crashed inside the > gallium > > llvmpipe driver. > > I just given some prints in the "lp_state_vertex.c" which resides inside > > "mesa-master/src/gallium/drivers/llvmpipe" > > Iam not sure why its crashing in the llvm pipe. > > once again iam informing that my intension is to run any of the > > opengl/opengles application with gallium mesa3d with llvm support and > check > > the > > performance in linux (fedora 11). > > NOTE : LLVM libraries used to compile gallium mesa 3d > > : clang_llvm-2.7-i686-linux > > Mesa Version : Mesa 7.10.0 > > $ ./configure --enable-debug --enable-gles1 --enable-gles2 > > --enable-gallium-svga --enable-gallium-i915 --enable-gallium-i965 > > --enable-gallium-llvm --disable-glut --with-dri-drivers= > > --disable-gallium-radeon --enable-gles-overlay > > --with-state-trackers=egl,vega > I did a clean build with same configure options. It works here. It > could be some compatibility issue with your LLVM version, but I am not > familiar with the code there. You might want to file a bug report. > > I do notice one thing weird in the EGL log below. > > > These are my export variables.: > > -------------------------------------------------- > > export > > > LD_LIBRARY_PATH="/home/muthu/work/game/gallium/mesa-master-llvm-gcc-egl/lib" > > export EGL_LOG_LEVEL="debug" > > export GALLIUM_DRIVER="llvmpipe" > > export > > > EGL_DRIVERS_PATH="/home/muthu/work/game/gallium/mesa-master-llvm-gcc-egl/lib/egl/" > > > > Here iam sending the log messages. > > ------------------------------------------------------------ > > [muthu@localhost opengles1]$ ./gears_x11 > > libEGL debug: EGL search path is /usr/local/lib/egl > When EGL_DRIVERS_PATH is set, it should be prepended to the search > path. Did you have the variable set when running the demo? > > libEGL debug: added /usr/local/lib/egl/egl_gallium.so to module array > > libEGL debug: added /usr/local/lib/egl/egl_glx.so to module array > > libEGL debug: dlopen(/usr/local/lib/egl/egl_gallium.so) > > libEGL info: use X11 for display 0x871f008 > > libEGL debug: searching for pipe module i915 > > libEGL warning: failed to create DRM screen > > libEGL warning: use software fallback > > libEGL debug: searching for pipe module swrast > > libEGL debug: loaded /usr/local/lib/egl/pipe_swrast.so > > libEGL debug: the best driver is Gallium (score 100) > > EGL_VERSION = 1.4 (Gallium) > > libEGL debug: the value (0x0) of attribute 0x3025 did not meet the > criteria > > (0x1) > > libEGL debug: the value (0x0) of attribute 0x3025 did not meet the > criteria > > (0x1) > > libEGL debug: the value (0x0) of attribute 0x3025 did not meet the > criteria > > (0x1) > > libEGL debug: the value (0x0) of attribute 0x3025 did not meet the > criteria > > (0x1) > > libEGL debug: the value (0x0) of attribute 0x3025 did not meet the > criteria > > (0x1) > > libEGL debug: the value (0x0) of attribute 0x3025 did not meet the > criteria > > (0x1) > > libEGL debug: the value (0x0) of attribute 0x3025 did not meet the > criteria > > (0x1) > > ... > > ... > > ... > > libEGL debug: loaded /usr/local/lib/egl/st_GLESv1_CM.so > > [MUTHU][114][llvmpipe_init_vertex_funcs][lp_state_vertex.c] > > [MUTHU][83][llvmpipe_set_vertex_buffers][lp_state_vertex.c] > > [MUTHU][44][llvmpipe_create_vertex_elements_state][lp_state_vertex.c] > > [MUTHU][61][llvmpipe_bind_vertex_elements_state][lp_state_vertex.c] > > [MUTHU][102][llvmpipe_set_index_buffer][lp_state_vertex.c] > > Segmentation fault > > Here iam sending gdb back trace: > > ------------------------------------------------------ > > 255 clipped = fpme->current_variant->jit_func_elts( > > &fpme->llvm->jit_context, > > (gdb) s > > Program received signal SIGSEGV, Segmentation fault. > > 0x00200539 in draw_llvm_shader_elts () > > (gdb) bt > > #0 0x00200539 in draw_llvm_shader_elts () > > #1 0x0104eae9 in llvm_pipeline_generic () at > > draw_pt_fetch_shade_pipeline_llvm.c:255 > > #2 0x0104e88e in llvm_middle_end_run () at > > draw_pt_fetch_shade_pipeline_llvm.c:337 > > #3 0x01007c42 in vsplit_flush_cache () at draw_pt_vsplit.c:77 > > #4 vsplit_segment_cache_ushort () at draw_pt_vsplit.c:173 > > #5 0x01006373 in vsplit_segment_simple_ushort () > > at > > > /home/muthu/work/game/gallium/mesa-master-llvm-gcc-egl/src/gallium/auxiliary/draw/draw_pt_vsplit_tmp.h:182 > > #6 vsplit_run_ushort () at draw_pt_vsplit.c:111 > > #7 0x01001439 in draw_pt_arrays () at draw_pt.c:113 > > #8 0x0100174a in draw_vbo () at draw_pt.c:481 > > #9 0x00fd3068 in llvmpipe_draw_vbo () at lp_draw_arrays.c:81 > > #10 0x009986d4 in st_draw_vbo () at st_draw.c:732 > > #11 0x00995610 in vbo_validated_drawrangeelements () at > vbo_exec_array.c:793 > > #12 0x0099428e in vbo_exec_DrawElements () at vbo_exec_array.c:947 > > #13 0x0804a299 in draw_gear () at gears.c:219 > > #14 0x0804a004 in gears_draw () at gears.c:268 > > #15 0x0804add3 in next_event () at eglut_x11.c:248 > > #16 _eglutNativeEventLoop () at eglut_x11.c:242 > > #17 0x08049639 in main () at gears.c:378 > > It seems the function "draw_llvm_shader_elts() is getting crashed. > > > > can any one help me to fix out this issue. > > Thanks > > Muthukumar > > > > > > On Tue, Jan 11, 2011 at 9:15 PM, Chia-I Wu <[email protected]> wrote: > >> > >> On Tue, Jan 11, 2011 at 10:00 PM, Muthukumar <[email protected]> > wrote: > >> > Iam working in fc-11 ,and i try to compile and run gallium mesa3d with > >> > llvm > >> > support .But i am getting some error while i try to run the opengl or > >> > opengles > >> > application. Can any one suggest me fix the issue .My intension is to > >> > run any of > >> > the opengl/opengles application with gallium mesa3d with llvm support > >> > and check > >> > the performance in linux (fedora 11). > >> > > >> > Here the configuration option of gallium mesa3d source > >> > ./configure --enable-debug --enable-gles1 --enable-gles2 > >> > --enable-gallium-egl -- > >> > enable-gallium-llvm --disable-glut --with-dri-drivers=i915 > >> > --disable-gallium- > >> > radeon --enable-gles-overlay > >> > > >> > > >> > config.status: executing configs commands > >> > > >> > prefix: /usr/local > >> > exec_prefix: ${prefix} > >> > libdir: ${exec_prefix}/lib > >> > includedir: ${prefix}/include > >> > > >> > OpenGL: yes (ES1: yes ES2: yes) > >> > GLES overlay: yes > >> > OpenVG: no > >> > > >> > Driver: dri > >> > OSMesa: no > >> > DRI drivers: i915 > >> > DRI driver dir: ${libdir}/dri > >> > Use XCB: no > >> > > >> > GLU: yes > >> > GLw: yes (Motif: no) > >> > glut: no > >> > > >> > EGL: yes > >> > EGL platforms: x11 drm > >> > EGL drivers: egl_glx egl_gallium > >> > EGL Gallium STs: $(GL_LIB) $(GLESv1_CM_LIB) $(GLESv2_LIB) > >> > > >> > llvm: yes > >> > llvm-config: > >> > /home/muthu/work/clang_llvm-2.7-i686-linux/bin/llvm- > >> > config > >> > llvm-version: 2.7 > >> > > >> > Gallium: yes > >> > Gallium dirs: auxiliary drivers state_trackers > >> > Target dirs: egl dri-swrast > >> > Winsys dirs: sw sw/xlib sw/dri i915/sw > >> > Driver dirs: softpipe failover galahad trace rbug identity > >> > llvmpipe > >> > svga i915 i965 > >> > Trackers dirs: dri egl > >> > > >> > Shared libs: yes > >> > Static libs: no > >> > > >> > CFLAGS: -g -O2 -Wall -Wmissing-prototypes -std=c99 > >> > -ffast-math > >> > -fvisibility=hidden -fno-strict-aliasing -g -fPIC > >> > CXXFLAGS: -g -O2 -Wall -fvisibility=hidden > >> > -fno-strict-aliasing - > >> > g -fPIC > >> > Macros: -D_GNU_SOURCE -DPTHREADS -DDEBUG > >> > -DHAVE_POSIX_MEMALIGN > >> > -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING - > >> > DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DGALLIUM_LLVMPIPE > >> > -D__STDC_CONSTANT_MACROS > >> > -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM > >> > > >> > PYTHON2: python2 > >> > > >> > Run 'gmake' to build Mesa > >> > > >> > > >> > and i have downloaded the "demo-master" (test apps) source and i > >> > compiled this > >> > apps with the above compiled libraries. > >> > If i try to run "gears_xll" or any other opengles apps iam getting the > >> > following > >> > error with segmentation fault ,I debug it ,the control is going in to > >> > llvm pipe > >> > and then getting crashed with seg fault. before running the > application > >> > i have > >> > set the following environment variables. > >> > > >> > export > >> > LD_LIBRARY_PATH="/home/muthu/work/game/gallium/mesa-master-llvm-gcc- > >> > egl/lib" > >> > export EGL_PLATFORM="dri" > >> There is no need to set EGL_PLATFORM in this case and generally. > >> "dri" is also an invalid value. > >> > export > >> > > LIBGL_DRIVERs_PATH="/home/muthu/work/game/gallium/mesa-master-llvm-gcc- > >> > egl/lib/gallium/" > >> Without > >> > >> $ export > >> > EGL_DRIVERS_PATH="/home/muthu/work/game/gallium/mesa-master-llvm-gcc-egl/lib/egl/" > >> > >> it is likely that the wrong driver is loaded. You can set > >> EGL_LOG_LEVEL=debug to see which module is dlopen()ed; if you suspect > >> the crash is in llvmpipe, you may set GALLIUM_DRIVER=softpipe to see > >> if it still crashes. Either way, a gdb backtrace is helpful. > >> > >> > > >> > > >> > # ./gears_x11 > >> > libEGL warning: failed to create DRM screen > >> > libEGL warning: use software fallback > >> > EGL_VERSION = 1.4 (Gallium) > >> > Segmentation fault > >> > [muthu@localhost opengles1]$ ./gears_x11 > >> > libEGL warning: failed to create DRM screen > >> > libEGL warning: use software fallback > >> > EGL_VERSION = 1.4 (Gallium) > >> > Segmentation fault > >> > > >> > > >> > Can any one suggest me fix the above issue .My intension is to run any > >> > of the > >> > opengl/opengles application with gallium mesa3d with llvm support and > >> > check the > >> > performance in linux (fedora 11). > >> > > >> > Thanks in advance. > >> > > >> > > >> > _______________________________________________ > >> > mesa-users mailing list > >> > [email protected] > >> > http://lists.freedesktop.org/mailman/listinfo/mesa-users > >> > > >> > >> > >> > >> -- > >> [email protected] > > > > > > > > -- > > Anbudan > > S.Muthukumar > > > > > > > > -- > [email protected] > -- Anbudan S.Muthukumar _______________________________________________ mesa-users mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-users