[Intel-gfx] glxinfo / glxgears segfault again

Daniel Vetter daniel at ffwll.ch
Thu Sep 22 22:35:21 CEST 2011


Hi Knut,

The issue has been a bug in libdrm. Can you please update that and retest?

Thanks, Daniel

On Sat, Sep 17, 2011 at 16:09, Knut Petersen <Knut_Petersen at t-online.de> wrote:
> 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
>
>
>



-- 
Daniel Vetter
daniel.vetter at ffwll.ch - +41 (0) 79 364 57 48 - http://blog.ffwll.ch



More information about the Intel-gfx mailing list