[Intel-gfx] glxinfo / glxgears segfault again

Knut Petersen Knut_Petersen at t-online.de
Sat Sep 17 16:09:51 CEST 2011


Am 17.09.2011 14:31, schrieb Daniel Vetter:
> Yeah, the i915g drivers has probably a few memory corruption issues left.
> Can you recompile with debug support (--enable-debug) and run glxgears in
> valgrind and then post the output? Maybe also file a bug against the i915
> gallium driver on freedesktop.org.
>
> Thanks, Daniel
>

I recompiled mesa/mesa using
========================

util/modular/build.sh $PREFIX  -o mesa/mesa --confflags "--enable-debug --enable-kdrive  --with-dri-drivers=i915 --with-gallium-drivers=i915,swrast --localstatedir=/var"

and ran glxinfo:
===========

name of display: :0
couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
i915_drm_buffer.c:86:i915_drm_buffer_create_tiled: Assertion `0' failed.
Trace/Breakpoint ausgelöst


knut at golem:~> valgrind glxinfo
========================

==3995== Memcheck, a memory error detector
==3995== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==3995== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info
==3995== Command: glxinfo
==3995==
name of display: :0
==3995== Conditional jump or move depends on uninitialised value(s)
==3995==    at 0x4B662B0: i915_screen_create (i915_screen.c:406)
==3995==    by 0x4B199B7: create_screen (target.c:18)
==3995==    by 0x4B1F61A: dri2_init_screen (dri2.c:648)
==3995==    by 0x4B1B6BB: dri2CreateNewScreen (dri_util.c:906)
==3995==    by 0x410E87B: dri2CreateScreen (dri2_glx.c:891)
==3995==    by 0x40E8BC9: __glXInitialize (glxext.c:780)
==3995==    by 0x40E4A9D: glXChooseVisual (glxcmds.c:176)
==3995==    by 0x8049186: mesa_hack (glxinfo.c:658)
==3995==    by 0x428EC2D: (below main) (in /lib/libc-2.11.3.so)
==3995==
==3995== Conditional jump or move depends on uninitialised value(s)
==3995==    at 0x4B662B2: i915_screen_create (i915_screen.c:406)
==3995==    by 0x4B199B7: create_screen (target.c:18)
==3995==    by 0x4B1F61A: dri2_init_screen (dri2.c:648)
==3995==    by 0x4B1B6BB: dri2CreateNewScreen (dri_util.c:906)
==3995==    by 0x410E87B: dri2CreateScreen (dri2_glx.c:891)
==3995==    by 0x40E8BC9: __glXInitialize (glxext.c:780)
==3995==    by 0x40E4A9D: glXChooseVisual (glxcmds.c:176)
==3995==    by 0x8049186: mesa_hack (glxinfo.c:658)
==3995==    by 0x428EC2D: (below main) (in /lib/libc-2.11.3.so)
==3995==
==3995== Conditional jump or move depends on uninitialised value(s)
==3995==    at 0x4B6630D: i915_screen_create (i915_screen.c:406)
==3995==    by 0x4B199B7: create_screen (target.c:18)
==3995==    by 0x4B1F61A: dri2_init_screen (dri2.c:648)
==3995==    by 0x4B1B6BB: dri2CreateNewScreen (dri_util.c:906)
==3995==    by 0x410E87B: dri2CreateScreen (dri2_glx.c:891)
==3995==    by 0x40E8BC9: __glXInitialize (glxext.c:780)
==3995==    by 0x40E4A9D: glXChooseVisual (glxcmds.c:176)
==3995==    by 0x8049186: mesa_hack (glxinfo.c:658)
==3995==    by 0x428EC2D: (below main) (in /lib/libc-2.11.3.so)
==3995==
couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
i915_drm_buffer.c:86:i915_drm_buffer_create_tiled: Assertion `0' failed.
==3995==
==3995== Process terminating with default action of signal 5 (SIGTRAP)
==3995==    at 0x4E41977: _debug_assert_fail (u_debug.c:285)
==3995==    by 0x4B22F76: i915_drm_buffer_create_tiled (i915_drm_buffer.c:86)
==3995==    by 0x4B680D0: i915_texture_create (i915_resource_texture.c:984)
==3995==    by 0x4B66472: i915_resource_create (i915_resource.c:15)
==3995==    by 0x4DF2838: draw_install_aaline_stage (draw_pipe_aaline.c:419)
==3995==    by 0x4B6ADD2: i915_create_context (i915_context.c:174)
==3995==    by 0x4BD176C: st_api_create_context (st_manager.c:684)
==3995==    by 0x4B20853: dri_create_context (dri_context.c:92)
==3995==    by 0x4B1BB28: dri2CreateNewContext (dri_util.c:687)
==3995==    by 0x410ECC5: dri2_create_context (dri2_glx.c:203)
==3995==    by 0x40E4FDD: CreateContext (glxcmds.c:276)
==3995==    by 0x40E5345: glXCreateContext (glxcmds.c:380)
==3995==
==3995== HEAP SUMMARY:
==3995==     in use at exit: 693,093 bytes in 1,006 blocks
==3995==   total heap usage: 1,681 allocs, 675 frees, 860,301 bytes allocated
==3995==
==3995== LEAK SUMMARY:
==3995==    definitely lost: 24 bytes in 1 blocks
==3995==    indirectly lost: 0 bytes in 0 blocks
==3995==      possibly lost: 4,437 bytes in 127 blocks
==3995==    still reachable: 688,632 bytes in 878 blocks
==3995==         suppressed: 0 bytes in 0 blocks
==3995== Rerun with --leak-check=full to see details of leaked memory
==3995==
==3995== For counts of detected and suppressed errors, rerun with: -v
==3995== Use --track-origins=yes to see where uninitialised values come from
==3995== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 23 from 8)
Trace/Breakpoint ausgelöst


Never heard about  libtxc_dxtn but found it at freedesktop.org.
After cloning, building and installing libtxc_dxtn:

golem:/home/knut/git/libtxc_dxtn # valgrind glxinfo
=====================================
==12510== Memcheck, a memory error detector
==12510== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al.
==12510== Using Valgrind-3.6.1 and LibVEX; rerun with -h for copyright info
==12510== Command: glxinfo
==12510==
name of display: :0
==12510== Conditional jump or move depends on uninitialised value(s)
==12510==    at 0x4B652B0: i915_screen_create (i915_screen.c:406)
==12510==    by 0x4B189B7: create_screen (target.c:18)
==12510==    by 0x4B1E61A: dri2_init_screen (dri2.c:648)
==12510==    by 0x4B1A6BB: dri2CreateNewScreen (dri_util.c:906)
==12510==    by 0x40E787B: dri2CreateScreen (dri2_glx.c:891)
==12510==    by 0x40C1BC9: __glXInitialize (glxext.c:780)
==12510==    by 0x40BDA9D: glXChooseVisual (glxcmds.c:176)
==12510==    by 0x8049186: mesa_hack (glxinfo.c:658)
==12510==    by 0x428EC2D: (below main) (in /lib/libc-2.11.3.so)
==12510==
==12510== Conditional jump or move depends on uninitialised value(s)
==12510==    at 0x4B652B2: i915_screen_create (i915_screen.c:406)
==12510==    by 0x4B189B7: create_screen (target.c:18)
==12510==    by 0x4B1E61A: dri2_init_screen (dri2.c:648)
==12510==    by 0x4B1A6BB: dri2CreateNewScreen (dri_util.c:906)
==12510==    by 0x40E787B: dri2CreateScreen (dri2_glx.c:891)
==12510==    by 0x40C1BC9: __glXInitialize (glxext.c:780)
==12510==    by 0x40BDA9D: glXChooseVisual (glxcmds.c:176)
==12510==    by 0x8049186: mesa_hack (glxinfo.c:658)
==12510==    by 0x428EC2D: (below main) (in /lib/libc-2.11.3.so)
==12510==
==12510== Conditional jump or move depends on uninitialised value(s)
==12510==    at 0x4B6530D: i915_screen_create (i915_screen.c:406)
==12510==    by 0x4B189B7: create_screen (target.c:18)
==12510==    by 0x4B1E61A: dri2_init_screen (dri2.c:648)
==12510==    by 0x4B1A6BB: dri2CreateNewScreen (dri_util.c:906)
==12510==    by 0x40E787B: dri2CreateScreen (dri2_glx.c:891)
==12510==    by 0x40C1BC9: __glXInitialize (glxext.c:780)
==12510==    by 0x40BDA9D: glXChooseVisual (glxcmds.c:176)
==12510==    by 0x8049186: mesa_hack (glxinfo.c:658)
==12510==    by 0x428EC2D: (below main) (in /lib/libc-2.11.3.so)
==12510==
i915_drm_buffer.c:86:i915_drm_buffer_create_tiled: Assertion `0' failed.
==12510==
==12510== Process terminating with default action of signal 5 (SIGTRAP)
==12510==    at 0x4E40977: _debug_assert_fail (u_debug.c:285)
==12510==    by 0x4B21F76: i915_drm_buffer_create_tiled (i915_drm_buffer.c:86)
==12510==    by 0x4B670D0: i915_texture_create (i915_resource_texture.c:984)
==12510==    by 0x4B65472: i915_resource_create (i915_resource.c:15)
==12510==    by 0x4DF1838: draw_install_aaline_stage (draw_pipe_aaline.c:419)
==12510==    by 0x4B69DD2: i915_create_context (i915_context.c:174)
==12510==    by 0x4BD076C: st_api_create_context (st_manager.c:684)
==12510==    by 0x4B1F853: dri_create_context (dri_context.c:92)
==12510==    by 0x4B1AB28: dri2CreateNewContext (dri_util.c:687)
==12510==    by 0x40E7CC5: dri2_create_context (dri2_glx.c:203)
==12510==    by 0x40BDFDD: CreateContext (glxcmds.c:276)
==12510==    by 0x40BE345: glXCreateContext (glxcmds.c:380)
==12510==
==12510== HEAP SUMMARY:
==12510==     in use at exit: 693,841 bytes in 1,010 blocks
==12510==   total heap usage: 1,438 allocs, 428 frees, 857,456 bytes allocated
==12510==
==12510== LEAK SUMMARY:
==12510==    definitely lost: 24 bytes in 1 blocks
==12510==    indirectly lost: 0 bytes in 0 blocks
==12510==      possibly lost: 4,437 bytes in 127 blocks
==12510==    still reachable: 689,380 bytes in 882 blocks
==12510==         suppressed: 0 bytes in 0 blocks
==12510== Rerun with --leak-check=full to see details of leaked memory
==12510==
==12510== For counts of detected and suppressed errors, rerun with: -v
==12510== Use --track-origins=yes to see where uninitialised values come from
==12510== ERROR SUMMARY: 3 errors from 3 contexts (suppressed: 24 from 9)

cu,
knut





More information about the Intel-gfx mailing list