[Intel-gfx] glxinfo / glxgears segfault again

Daniel Vetter daniel at ffwll.ch
Sat Sep 17 14:31:21 CEST 2011


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

On Sat, Sep 17, 2011 at 02:14:39PM +0200, Knut Petersen wrote:
> Every time I start firefox 6.0.2 I see a segfault in /var/log/messages:
> ===================================================
> 
> Sep 11 08:18:42 golem kernel: [133705.542630] firefox-bin[15419]: segfault at 0 ip   (null) sp bf886dec error 14 in firefox-bin[8048000+c000]
> Sep 17 13:16:30 golem kernel: [ 8214.245108] firefox-bin[15493]: segfault at 0 ip   (null) sp bfa6a09c error 14 in firefox-bin[8048000+c000]
> 
> Nevertheless firefox 6.0.2 continues and runs without any problems ?!
> 
> 
> glxgears segfaults within fractions of a second
> ===================================
> 
> Sep 17 11:02:13 golem kernel: [  157.697874] glxinfo[3747]: segfault at 0 ip   (null) sp bfa4184c error 14 in glxinfo[8048000+4000]
> 
> ltrace glxgears:
> ============
> [...]
> glVertex3f(0x3fa66666, 0x34740f89, 0xbe800000, 0xbfe23cf0, 3330)                                               = 21
> glVertex3f(0x3fa66666, 0x34740f89, 0x3e800000, 0xbfe23cf0, 3330)                                               = 22
> glEnd(0x3fa66666, 0x40000000, 0x3f000000, 1, 0)                                                                = 646
> glEndList(0x3fa66666, 0x40000000, 0x3f000000, 1, 0)                                                            = 0x812e140
> glEnable(2977, 0x40000000, 0x3f000000, 1, 0)                                                                   = 0
> XPending(0x804e008, 0x40000000, 0x3f000000, 1, 0)                                                              = 1
> XNextEvent(0x804e008, 0xbfe23e60, 0x3f000000, 1, 0)                                                            = 0
> XPending(0x804e008, 0xbfe23e60, 0x3f000000, 1, 0)                                                              = 3
> XNextEvent(0x804e008, 0xbfe23e60, 0x3f000000, 1, 0)                                                            = 0
> XPending(0x804e008, 0xbfe23e60, 0x3f000000, 1, 0)                                                              = 2
> XNextEvent(0x804e008, 0xbfe23e60, 0x3f000000, 1, 0)                                                            = 0
> glViewport(0, 0, 300, 300, 0x804e008)                                                                          = 0x8130780
> glMatrixMode(5889, 0, 300, 300, 0x804e008)                                                                     = 0x80db478
> glLoadIdentity(5889, 0, 300, 300, 0x804e008)                                                                   = 2
> glFrustum(0, 0xbff00000, 0, 0x3ff00000, 0)                                                                     = 2
> glMatrixMode(5888, 0xbff00000, 0, 0x3ff00000, 0)                                                               = 0x80db464
> glLoadIdentity(5888, 0xbff00000, 0, 0x3ff00000, 0)                                                             = 1
> glTranslatef(0, 0, 0xc2200000, 0x3ff00000, 0)                                                                  = 1
> XPending(0x804e008, 0xbfe23e60, 0x3f000000, 1, 0)                                                              = 1
> XNextEvent(0x804e008, 0xbfe23e60, 0x3f000000, 1, 0)                                                            = 0
> XPending(0x804e008, 0xbfe23e60, 0x3f000000, 1, 0)                                                              = 0
> gettimeofday(0xbfe23e50, 0xbfe23e48)                                                                           = 0
> glClear(16640, 0xbfe23e48, 0x3f000000, 1, 0 <unfinished ...>
> --- SIGSEGV (Segmentation fault) ---
> +++ killed by SIGSEGV +++
> 
> 
> glxinfo segfaults after some output:
> ==========================
> 
> golem:/home/knut/git # glxinfo
> name of display: :0
> display: :0  screen: 0
> direct rendering: Yes
> server glx vendor string: SGI
> server glx version string: 1.4
> server glx extensions:
>     GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
>     GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
>     GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control,
>     GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
>     GLX_SGIX_visual_select_group, GLX_INTEL_swap_event
> client glx vendor string: Mesa Project and SGI
> client glx version string: 1.4
> client glx extensions:
>     GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
>     GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_EXT_framebuffer_sRGB,
>     GLX_MESA_copy_sub_buffer, GLX_MESA_multithread_makecurrent,
>     GLX_MESA_swap_control, GLX_OML_swap_method, GLX_OML_sync_control,
>     GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync,
>     GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
>     GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap,
>     GLX_INTEL_swap_event
> GLX extensions:
>     GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
>     GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
>     GLX_MESA_multithread_makecurrent, GLX_MESA_swap_control,
>     GLX_OML_swap_method, GLX_OML_sync_control, GLX_SGI_make_current_read,
>     GLX_SGI_swap_control, GLX_SGI_video_sync, GLX_SGIS_multisample,
>     GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group,
>     GLX_EXT_texture_from_pixmap, GLX_INTEL_swap_event
> OpenGL vendor string: VMware, Inc.
> OpenGL renderer string: Gallium 0.4 on i915 (chipset: 915GM)
> OpenGL version string: 1.4 Mesa 7.12-devel (git-f2bae94)
> OpenGL extensions:
>     GL_ARB_multisample, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color,
>     GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract,
>     GL_EXT_copy_texture, GL_EXT_polygon_offset, GL_EXT_subtexture,
>     GL_EXT_texture_object, GL_EXT_vertex_array, GL_EXT_compiled_vertex_array,
>     GL_EXT_texture, GL_EXT_texture3D, GL_IBM_rasterpos_clip,
>     GL_ARB_point_parameters, GL_EXT_draw_range_elements, GL_EXT_packed_pixels,
>     GL_EXT_point_parameters, GL_EXT_rescale_normal,
>     GL_EXT_separate_specular_color, GL_EXT_texture_edge_clamp,
>     GL_SGIS_generate_mipmap, GL_SGIS_texture_border_clamp,
>     GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_ARB_multitexture,
>     GL_IBM_multimode_draw_arrays, GL_IBM_texture_mirrored_repeat,
>     GL_ARB_texture_cube_map, GL_ARB_texture_env_add, GL_ARB_transpose_matrix,
>     GL_EXT_blend_func_separate, GL_EXT_fog_coord, GL_EXT_multi_draw_arrays,
>     GL_EXT_secondary_color, GL_EXT_texture_env_add,
>     GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias,
>     GL_INGR_blend_func_separate, GL_NV_blend_square, GL_NV_light_max_exponent,
>     GL_NV_texgen_reflection, GL_NV_texture_env_combine4,
>     GL_SUN_multi_draw_arrays, GL_ARB_texture_border_clamp,
>     GL_ARB_texture_compression, GL_EXT_framebuffer_object,
>     GL_EXT_texture_env_dot3, GL_MESA_window_pos, GL_NV_packed_depth_stencil,
>     GL_NV_texture_rectangle, GL_ARB_depth_texture, GL_ARB_shadow,
>     GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar,
>     GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat,
>     GL_ARB_window_pos, GL_EXT_stencil_two_side, GL_EXT_texture_cube_map,
>     GL_APPLE_packed_pixels, GL_APPLE_vertex_array_object, GL_ARB_draw_buffers,
>     GL_ARB_fragment_program, GL_ARB_vertex_program, GL_ATI_draw_buffers,
>     GL_ATI_texture_env_combine3, GL_EXT_shadow_funcs, GL_EXT_stencil_wrap,
>     GL_MESA_pack_invert, GL_MESA_ycbcr_texture, GL_NV_primitive_restart,
>     GL_ARB_fragment_program_shadow, GL_ARB_half_float_pixel,
>     GL_ARB_point_sprite, GL_ARB_sync, GL_ARB_texture_non_power_of_two,
>     GL_ARB_vertex_buffer_object, GL_OES_read_format,
>     GL_ARB_color_buffer_float, GL_ARB_pixel_buffer_object,
>     GL_ARB_texture_rectangle, GL_EXT_pixel_buffer_object,
>     GL_EXT_texture_rectangle, GL_ARB_framebuffer_object,
>     GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample,
>     GL_EXT_packed_depth_stencil, GL_ARB_vertex_array_object,
>     GL_ATI_separate_stencil, GL_EXT_gpu_program_parameters,
>     GL_EXT_texture_env_combine, GL_OES_EGL_image, GL_ARB_copy_buffer,
>     GL_ARB_instanced_arrays, GL_ARB_map_buffer_range,
>     GL_ARB_vertex_array_bgra, GL_EXT_vertex_array_bgra,
>     GL_ARB_draw_elements_base_vertex, GL_ARB_fragment_coord_conventions,
>     GL_ARB_provoking_vertex, GL_ARB_sampler_objects, GL_EXT_provoking_vertex,
>     GL_ARB_robustness
> glu version: 1.3
> glu extensions:
>     GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess
> 
>    visual  x  bf lv rg d st colorbuffer ax dp st accumbuffer  ms  cav
>  id dep cl sp sz l  ci b ro  r  g  b  a bf th cl  r  g  b  a ns b eat
> ----------------------------------------------------------------------
> 0x21 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None
> 0x22 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None
> 0xa9 24 tc  0 32  0 r  .  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None
> 0xaa 24 tc  0 32  0 r  .  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow
> 0xab 24 tc  0 32  0 r  y  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None
> 0xac 24 tc  0 32  0 r  y  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow
> 0xad 24 tc  0 32  0 r  y  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None
> 0xae 24 tc  0 32  0 r  y  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow
> 0xaf 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
> 0xb0 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  0 0 Slow
> 0xb1 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
> 0xb2 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  0 0 Slow
> 0xb3 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
> 0xb4 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  0 0 Slow
> 0xb5 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None
> 0xb6 24 tc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow
> 0xb7 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow
> 0xb8 24 tc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow
> 0xb9 24 dc  0 32  0 r  .  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None
> 0xba 24 dc  0 32  0 r  .  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow
> 0xbb 24 dc  0 32  0 r  y  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None
> 0xbc 24 dc  0 32  0 r  y  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow
> 0xbd 24 dc  0 32  0 r  y  .  8  8  8  8  0  0  0  0  0  0  0  0 0 None
> 0xbe 24 dc  0 32  0 r  y  .  8  8  8  8  0  0  0 16 16 16 16  0 0 Slow
> 0xbf 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
> 0xc0 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  0 16 16 16 16  0 0 Slow
> 0xc1 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
> 0xc2 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  0 0 Slow
> 0xc3 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0  0  0  0  0  0 0 None
> 0xc4 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  0 16 16 16 16  0 0 Slow
> 0xc5 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None
> 0xc6 24 dc  0 32  0 r  .  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow
> 0xc7 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow
> 0xc8 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None
> 0xc9 24 dc  0 32  0 r  y  .  8  8  8  8  0 24  8 16 16 16 16  0 0 Slow
> 0x60 32 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None
> Speicherzugriffsfehler
> 
> Sep 17 11:02:17 golem kernel: [  161.347390] glxgears[3750]: segfault at 0 ip   (null) sp bfeeff8c error 14 in glxgears[8048000+4000]
> 
> ltrace glxinfo
> ==========
> [...]
> glXQueryExtensionsString(0x804e008, 0, 0xb7622ff4, 0xb76234c0, 0xb7623840)                                     = 0x8136a08
> glXGetConfig(0x804e008, 0x8137148, 1, 0xbfac815c, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 2, 0xbfac8178, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 3, 0xbfac817c, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 4, 0xbfac8180, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 5, 0xbfac8184, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 6, 0xbfac8188, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 7, 0xbfac818c, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 8, 0xbfac8190, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 9, 0xbfac8194, 0xb7623840)                                                  = 0
> glXGetConfig(0x804e008, 0x8137148, 10, 0xbfac8198, 0xb7623840)                                                 = 0
> glXGetConfig(0x804e008, 0x8137148, 11, 0xbfac819c, 0xb7623840)                                                 = 0
> glXGetConfig(0x804e008, 0x8137148, 12, 0xbfac81a0, 0xb7623840)                                                 = 0
> glXGetConfig(0x804e008, 0x8137148, 13, 0xbfac81a4, 0xb7623840)                                                 = 0
> glXGetConfig(0x804e008, 0x8137148, 14, 0xbfac81a8, 0xb7623840)                                                 = 0
> glXGetConfig(0x804e008, 0x8137148, 15, 0xbfac81ac, 0xb7623840)                                                 = 0
> glXGetConfig(0x804e008, 0x8137148, 16, 0xbfac81b0, 0xb7623840)                                                 = 0
> glXGetConfig(0x804e008, 0x8137148, 17, 0xbfac81b4, 0xb7623840)                                                 = 0
> glXGetConfig(0x804e008, 0x8137148, 35, 0xbfac8160, 0xb7623840)                                                 = 0
> strstr("GLX_ARB_multisample", "GLX_ARB_get_proc_address GLX_ARB"...)                                           = NULL
> glXGetConfig(0x804e008, 0x8137148, 100000, 0xbfac81bc, 0xb7623840)                                             = 0
> glXGetConfig(0x804e008, 0x8137148, 100001, 0xbfac81b8, 0xb7623840)                                             = 0
> strstr("GLX_ARB_get_proc_address GLX_ARB"..., "GLX_EXT_visual_rating")                                         = "GLX_EXT_visual_rating GLX_MESA_c"...
> glXGetConfig(0x804e008, 0x8137148, 32, 0xbfac81c0, 0xb7623840)                                                 = 0
> __printf_chk(1, 0x804b120, 96, 32, 0x804ad7b)                                                                  = 48
> __printf_chk(1, 0x804a92f, 0, 0, 00x60 32 tc  0 32  0 r  y  .  8  8  8  8  0 24  8  0  0  0  0  0 0 None
> )                                                                            = 23
> XFree(0x8136bd0, 0x804a92f, 0, 0, 0)                                                                           = 1
> XCloseDisplay(0x0804e008 <unfinished ...>
> --- SIGSEGV (Segmentation fault) ---
> +++ killed by SIGSEGV +++
> 
> 
> (gdb) backtrace
> ============
> #0  0x00000000 in ?? ()
> #1  0xb6c791fd in i915_fixup_bind_sampler_states () from /usr/lib/dri/i915_dri.so
> #2  0xb6eaf5a7 in cso_release_all () from /usr/lib/dri/i915_dri.so
> #3  0xb6d8b6e7 in st_destroy_context () from /usr/lib/dri/i915_dri.so
> #4  0xb6cc767d in st_context_destroy () from /usr/lib/dri/i915_dri.so
> #5  0xb6c3a0fc in dri_destroy_context () from /usr/lib/dri/i915_dri.so
> #6  0xb6c350e7 in driDestroyContext () from /usr/lib/dri/i915_dri.so
> #7  0xb7f25730 in dri2_destroy_context () from /usr/lib/libGL.so.1
> #8  0xb7efe73a in glx_display_free () from /usr/lib/libGL.so.1
> #9  0xb7efe7cc in __glXCloseDisplay () from /usr/lib/libGL.so.1
> #10 0xb7dcb27b in XCloseDisplay () from /usr/lib/libX11.so.6
> #11 0x0804a3b6 in ?? ()
> #12 0xb7c5cc2e in __libc_start_main () from /lib/libc.so.6
> #13 0x08048cf1 in ?? ()
> 
> 
> Xorg.0.log
> ========
> Absolutely clean, no warnings, no errors.
> 
> 
> System information:
> ===============
> hardware: Aopen i915GMm-hfs
> distribution: opensuse 11.4
> linux kernel  3.0.4
> Xorg: complete current git version (util/modular/build.sh $PREFIX -a -n --cmd "git pull --rebase"),
> compiled using the following script
> 
> export PREFIX=/usr
> export MAKEFLAGS="-j 15"
> export GMAKEFLAGS="-j 15"
> export CC=/opt/icecream/bin/gcc
> export CXX=/opt/icecream/bin/g++
> export PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig
> export PATH=$PREFIX/bin:$PATH
> export ACLOCAL="aclocal -I $PREFIX/share/aclocal"
> export LD_LIBRARY_PATH=$PREFIX/lib
> export PYTHONPATH=$PREFIX/lib/python2.7/site-packages
> export CFLAGS="-O3 "
> util/modular/build.sh $PREFIX  --autoresume built-modules.txt \
>     --confflags "--enable-kdrive  --with-dri-drivers=i915 --with-gallium-drivers=i915,swrast --localstatedir=/var"
> 
> 
> I cleaned the complete tree (make clean, make realclean, git reset --hard), pulled and recompiled.
> firefox, glxinfo and glxgears still segfault.
> 
> Any idea?
> 
> cu,
>  Knut
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48



More information about the Intel-gfx mailing list