Bug 38898

Summary: [i965] often crashes when leaving full screen mode of FreeDroidRPG SVN version
Product: Mesa Reporter: Martin Steigerwald <Martin>
Component: Drivers/DRI/i965Assignee: Ian Romanick <idr>
Status: RESOLVED WORKSFORME QA Contact:
Severity: normal    
Priority: medium CC: arthur.huillet, jbarnes
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: Complete X.org log

Description Martin Steigerwald 2011-07-01 13:23:22 UTC
Created attachment 48668 [details]
Complete X.org log

Freedroid RPG svn version as of today partly supports Full HD resolution (some menus are distorted, but basically it works) and it does so with about 58 to 59 fps with Intel Sandybridge on ThinkPad T520.

But when I leave full screen mode by pressing F2 or leaving the game it often happens, that X.org crashes with:

[  1761.224] 0: /usr/bin/X (xorg_backtrace+0x26) [0x4a3836]
[  1761.224] 1: /usr/bin/X (0x400000+0x65049) [0x465049]
[  1761.224] 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f4deb91a000+0xf020) [0x7f4deb929020]
[  1761.224] 3: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f4de7e51000+0x4672e) [0x7f4de7e9772e]
[  1761.224] 4: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f4de7e51000+0x85875) [0x7f4de7ed6875]
[  1761.224] 5: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f4de7e51000+0x6f66a) [0x7f4de7ec066a]
[  1761.224] 6: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f4de7e51000+0x5dc60) [0x7f4de7eaec60]
[  1761.224] 7: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f4de7e51000+0x147deb) [0x7f4de7f98deb]
[  1761.224] 8: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f4de7e51000+0x1c9ab6) [0x7f4de801aab6]
[  1761.224] 9: /usr/lib/xorg/modules/extensions/libglx.so (0x7f4de90c0000+0x22d17) [0x7f4de90e2d17]
[  1761.224] 10: /usr/lib/xorg/modules/extensions/libglx.so (0x7f4de90c0000+0x254d5) [0x7f4de90e54d5]
[  1761.224] 11: /usr/bin/X (0x400000+0x32d09) [0x432d09]
[  1761.224] 12: /usr/bin/X (0x400000+0x26fae) [0x426fae]
[  1761.224] 13: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xfd) [0x7f4dea652ead]
[  1761.224] 14: /usr/bin/X (0x400000+0x2729d) [0x42729d]
[  1761.224] Segmentation fault at address 0xc
[  1761.224] 
Fatal server error:
[  1761.224] Caught signal 11 (Segmentation fault). Server aborting
[  1761.224] 
[  1761.224] 

I am using mesa 7.11 devel with the fix for bug #38642

martin@merkaba:~> apt-show-versions | egrep "(xserver-xorg/|xserver-xorg-core/|xsever-xorg-video-intel|mesa|libdrm)"
libdrm-intel1/sid uptodate 2.4.26-1
libdrm-radeon1/sid uptodate 2.4.26-1
libdrm2/sid uptodate 2.4.26-1
libgl1-mesa-dev 7.11~0-2+bug38642 newer than version in archive
libgl1-mesa-dri 7.11~0-2+bug38642 newer than version in archive
libgl1-mesa-glx 7.11~0-2+bug38642 newer than version in archive
libglu1-mesa 7.11~0-2+bug38642 newer than version in archive
libglu1-mesa-dev 7.11~0-2+bug38642 newer than version in archive
mesa-common-dev 7.11~0-2+bug38642 newer than version in archive
mesa-utils/sid uptodate 8.0.1-2
xserver-xorg/sid uptodate 1:7.6+7
xserver-xorg-core/sid uptodate 2:1.10.2-2

martin@merkaba:~> cat /proc/version                                                                                 
Linux version 3.0.0-rc5-amd64 (Debian 3.0.0~rc5-1~experimental.1) (maks@debian.org) (gcc version 4.4.6 (Debian 4.4.6-6) ) #1 SMP Tue Jun 28 10:21:15 UTC 2011
martin@merkaba:~> lspci -nn | grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0126] (rev 09)

I will try to grab the necessary debug packages in order to get a more meaningful backtrace in a moment.
Comment 1 Martin Steigerwald 2011-07-01 13:38:50 UTC
I now have

martin@merkaba:~/Linux/X11/Bugs/38898 [i965] often crashes when leaving full screen mode of FreeDroidRPG SVN version> apt-show-versions | egrep "(xserver-xorg/|xserver-xorg-core/|xsever-xorg-video-intel|mesa|libdrm)" | grep dbg              
libgl1-mesa-dri-dbg 7.11~0-2+bug38642 newer than version in archive
libgl1-mesa-glx-dbg 7.11~0-2+bug38642 newer than version in archive

but that still doesn´t give me more than:

[  2861.734] (II) intel(0): Modeline "1920x1080"x0.0  115.83  1920 1980 2028 2050  1080 1090 1100 1130 -hsync -vsync (56.5 
kHz)
[  2916.029] 
Backtrace:
[  2916.030] 0: /usr/bin/X (xorg_backtrace+0x26) [0x4a3836]
[  2916.030] 1: /usr/bin/X (0x400000+0x65049) [0x465049]
[  2916.030] 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f98672b2000+0xf020) [0x7f98672c1020]
[  2916.030] 3: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f98637e9000+0x4672e) [0x7f986382f72e]
[  2916.030] 4: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f98637e9000+0x85875) [0x7f986386e875]
[  2916.030] 5: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f98637e9000+0x6f66a) [0x7f986385866a]
[  2916.030] 6: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f98637e9000+0x5dc60) [0x7f9863846c60]
[  2916.030] 7: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f98637e9000+0x147deb) [0x7f9863930deb]
[  2916.030] 8: /usr/lib/x86_64-linux-gnu/dri/i965_dri.so (0x7f98637e9000+0x1c9ab6) [0x7f98639b2ab6]
[  2916.030] 9: /usr/lib/xorg/modules/extensions/libglx.so (0x7f9864a58000+0x22d17) [0x7f9864a7ad17]
[  2916.030] 10: /usr/lib/xorg/modules/extensions/libglx.so (0x7f9864a58000+0x254d5) [0x7f9864a7d4d5]
[  2916.030] 11: /usr/bin/X (0x400000+0x32d09) [0x432d09]
[  2916.030] 12: /usr/bin/X (0x400000+0x26fae) [0x426fae]
[  2916.030] 13: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xfd) [0x7f9865feaead]
[  2916.030] 14: /usr/bin/X (0x400000+0x2729d) [0x42729d]
[  2916.030] Segmentation fault at address 0xc
[  2916.030] 
Fatal server error:
[  2916.030] Caught signal 11 (Segmentation fault). Server aborting
[  2916.030] 
[  2916.030] 

Any hints on how to make this backtrace better? Thanks.
Comment 2 Chris Wilson 2011-07-01 14:05:12 UTC
That explains why it is so slow for you... You appear to be using indirect rendering. Check your system configuration to find out why.

$ LIBGL_DEBUG=verbose glxinfo

should give a few clues as to what is wrong.

The crash looks like one of the races that in theory has been fixed with later Xservers/uxa/sna/etc. If you can reproduce it with freedroidrpg using direct rendering, only freedroidrpg itself will crash and is so much easier to debug. ;-)
Comment 3 Martin Steigerwald 2011-07-01 14:35:18 UTC
According to glxinfo I do use direct rendering. Beside that 58-60fps on Full HD resolution 1920x1080 is faster than anything I have seen with FreeDroidRPG so far. With 0.14.1 and 1400x1050 and mesa 7.10, but also 7.11 devel I only had about 28-30 fps.

*puzzled*

martin@merkaba:~> LIBGL_DEBUG=verbose glxinfo
name of display: :0
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/i965_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/i965_dri.so
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
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 version: 1.4
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: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile 
OpenGL version string: 2.1 Mesa 7.11-devel
OpenGL shading language version string: 1.20
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_framebuffer_sRGB, 
    GL_ARB_multitexture, GL_EXT_framebuffer_sRGB, 
    GL_IBM_multimode_draw_arrays, GL_IBM_texture_mirrored_repeat, 
    GL_3DFX_texture_compression_FXT1, 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_NV_vertex_program, GL_ARB_depth_texture, 
    GL_ARB_occlusion_query, 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_ATI_envmap_bumpmap, 
    GL_EXT_stencil_two_side, GL_EXT_texture_cube_map, GL_NV_depth_clamp, 
    GL_NV_vertex_program1_1, GL_APPLE_client_storage, GL_APPLE_packed_pixels, 
    GL_APPLE_vertex_array_object, GL_ARB_draw_buffers, 
    GL_ARB_fragment_program, GL_ARB_fragment_shader, GL_ARB_shader_objects, 
    GL_ARB_vertex_program, GL_ARB_vertex_shader, 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_ARB_depth_clamp, 
    GL_ARB_fragment_program_shadow, GL_ARB_half_float_pixel, 
    GL_ARB_point_sprite, GL_ARB_shading_language_100, GL_ARB_sync, 
    GL_ARB_texture_non_power_of_two, GL_ARB_vertex_buffer_object, 
    GL_ATI_blend_equation_separate, GL_EXT_blend_equation_separate, 
    GL_OES_read_format, GL_ARB_color_buffer_float, GL_ARB_pixel_buffer_object, 
    GL_ARB_texture_compression_rgtc, GL_ARB_texture_rectangle, 
    GL_EXT_pixel_buffer_object, GL_EXT_texture_compression_rgtc, 
    GL_EXT_texture_rectangle, GL_EXT_texture_sRGB, GL_ARB_framebuffer_object, 
    GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample, 
    GL_EXT_packed_depth_stencil, GL_APPLE_object_purgeable, 
    GL_ARB_vertex_array_object, GL_ATI_separate_stencil, GL_EXT_draw_buffers2, 
    GL_EXT_gpu_program_parameters, GL_EXT_texture_env_combine, 
    GL_EXT_texture_sRGB_decode, GL_EXT_timer_query, GL_OES_EGL_image, 
    GL_ARB_copy_buffer, GL_ARB_half_float_vertex, GL_ARB_map_buffer_range, 
    GL_ARB_texture_rg, GL_ARB_texture_swizzle, GL_ARB_vertex_array_bgra, 
    GL_EXT_separate_shader_objects, GL_EXT_texture_swizzle, 
    GL_EXT_vertex_array_bgra, GL_NV_conditional_render, 
    GL_ARB_ES2_compatibility, GL_ARB_draw_elements_base_vertex, 
    GL_ARB_explicit_attrib_location, GL_ARB_fragment_coord_conventions, 
    GL_ARB_provoking_vertex, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, 
    GL_EXT_provoking_vertex, GL_EXT_texture_snorm, 
    GL_MESA_texture_signed_rgba, GL_ARB_robustness

32 GLX Visuals
    visual  x   bf lv rg d st  colorbuffer  sr ax dp st accumbuffer  ms  cav
  id dep cl sp  sz l  ci b ro  r  g  b  a F gb bf th cl  r  g  b  a ns b eat
----------------------------------------------------------------------------
0x021 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x022 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x09e 24 tc  0  24  0 r  . .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x09f 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x0a0 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x0a1 24 tc  0  24  0 r  . .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x0a2 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x0a3 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x0a4 24 tc  0  32  0 r  . .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x0a5 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x0a6 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x0a7 24 tc  0  32  0 r  . .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x0a8 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x0a9 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8 16 16 16  0  0 0 Slow
0x0aa 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x0ab 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8 16 16 16 16  0 0 Slow
0x0ac 24 dc  0  24  0 r  . .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x0ad 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x0ae 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x0af 24 dc  0  24  0 r  . .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x0b0 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x0b1 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x0b2 24 dc  0  32  0 r  . .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x0b3 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x0b4 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x0b5 24 dc  0  32  0 r  . .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x0b6 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x0b7 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x0b8 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8 16 16 16  0  0 0 Slow
0x0b9 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x0ba 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8 16 16 16 16  0 0 Slow
0x06d 32 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None

48 GLXFBConfigs:
    visual  x   bf lv rg d st  colorbuffer  sr ax dp st accumbuffer  ms  cav
  id dep cl sp  sz l  ci b ro  r  g  b  a F gb bf th cl  r  g  b  a ns b eat
----------------------------------------------------------------------------
0x06e  0 tc  0  16  0 r  . .   5  6  5  0 .  .  0  0  0  0  0  0  0  0 0 None
0x06f  0 tc  0  16  0 r  y .   5  6  5  0 .  .  0  0  0  0  0  0  0  0 0 None
0x070  0 tc  0  16  0 r  y .   5  6  5  0 .  .  0  0  0  0  0  0  0  0 0 None
0x071  0 tc  0  16  0 r  . .   5  6  5  0 .  .  0 16  0  0  0  0  0  0 0 None
0x072  0 tc  0  16  0 r  y .   5  6  5  0 .  .  0 16  0  0  0  0  0  0 0 None
0x073  0 tc  0  16  0 r  y .   5  6  5  0 .  .  0 16  0  0  0  0  0  0 0 None
0x074 24 tc  0  24  0 r  . .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x075 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x076 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x077 24 tc  0  24  0 r  . .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x078 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x079 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x07a 24 tc  0  32  0 r  . .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x07b 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x07c 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x07d 24 tc  0  32  0 r  . .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x07e 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x07f 32 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x080  0 tc  0  16  0 r  y .   5  6  5  0 .  .  0 16  0  0  0  0  0  0 0 None
0x081  0 tc  0  16  0 r  y .   5  6  5  0 .  .  0 16  0 16 16 16  0  0 0 Slow
0x082 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x083 24 tc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8 16 16 16  0  0 0 Slow
0x084 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x085 24 tc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8 16 16 16 16  0 0 Slow
0x086  0 dc  0  16  0 r  . .   5  6  5  0 .  .  0  0  0  0  0  0  0  0 0 None
0x087  0 dc  0  16  0 r  y .   5  6  5  0 .  .  0  0  0  0  0  0  0  0 0 None
0x088  0 dc  0  16  0 r  y .   5  6  5  0 .  .  0  0  0  0  0  0  0  0 0 None
0x089  0 dc  0  16  0 r  . .   5  6  5  0 .  .  0 16  0  0  0  0  0  0 0 None
0x08a  0 dc  0  16  0 r  y .   5  6  5  0 .  .  0 16  0  0  0  0  0  0 0 None
0x08b  0 dc  0  16  0 r  y .   5  6  5  0 .  .  0 16  0  0  0  0  0  0 0 None
0x08c 24 dc  0  24  0 r  . .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x08d 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x08e 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0  0  0  0  0  0  0  0 0 None
0x08f 24 dc  0  24  0 r  . .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x090 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x091 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x092 24 dc  0  32  0 r  . .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x093 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x094 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0  0  0  0  0  0  0  0 0 None
0x095 24 dc  0  32  0 r  . .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x096 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x097 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x098  0 dc  0  16  0 r  y .   5  6  5  0 .  .  0 16  0  0  0  0  0  0 0 None
0x099  0 dc  0  16  0 r  y .   5  6  5  0 .  .  0 16  0 16 16 16  0  0 0 Slow
0x09a 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8  0  0  0  0  0 0 None
0x09b 24 dc  0  24  0 r  y .   8  8  8  0 .  .  0 24  8 16 16 16  0  0 0 Slow
0x09c 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8  0  0  0  0  0 0 None
0x09d 24 dc  0  32  0 r  y .   8  8  8  8 .  .  0 24  8 16 16 16 16  0 0 Slow
Comment 4 Chris Wilson 2011-07-01 23:35:39 UTC
It's always possible that the application itself is requesting an indirect context (through glXCreateContext) or that its environment includes LIBGL_ALWAYS_INDIRECT=1. Both do seem unlikely...

Maybe running freedroidrpg under gdb and putting a breakpoint on glXCreateContext might reveal a bit more.
Comment 5 Martin Steigerwald 2011-07-04 12:58:41 UTC
(In reply to comment #4)
> It's always possible that the application itself is requesting an indirect
> context (through glXCreateContext) or that its environment includes
> LIBGL_ALWAYS_INDIRECT=1. Both do seem unlikely...
> 
> Maybe running freedroidrpg under gdb and putting a breakpoint on
> glXCreateContext might reveal a bit more.

How do I do this? I come this far:

martin@merkaba:~/Spielen/FreeDroidRPG/freedroid-svn/src> gdb ./freedroidRPG
GNU gdb (GDB) 7.2-debian
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/martin/Spielen/FreeDroidRPG/freedroid-svn/src/freedroidRPG...done.
(gdb) break glXCreateContext
Function "glXCreateContext" not defined.
Make breakpoint pending on future shared library load? (y or [n])

Without breakpoint X.org crashes after FreeDroidRPG has been quit (when I test the quit case of this bug) and there then is no obviously stack when typing "bt full".
Comment 6 Martin Steigerwald 2011-07-04 13:03:38 UTC
Well the breakpoint works, but only once it seems:

(gdb) break glXCreateContext
Function "glXCreateContext" not defined.
Make breakpoint pending on future shared library load? (y or [n]) y
Breakpoint 1 (glXCreateContext) pending.
(gdb) run
Starting program: /home/martin/Spielen/FreeDroidRPG/freedroid-svn/src/freedroidRPG
[Thread debugging using libthread_db enabled]

Hello, this is FreedroidRPG, version 0.14.1+svn.
This seems to be a development version, so we'll exit on floating point exceptions.[New Thread 0x7fffe9117700 (LWP 24695)]

Video system type: x11.
Using screen resolution 1920 x 1080.

Testing if color depth 32 bits is available... YES.
Breakpoint 1, glXCreateContext (dpy=0xa52f40, vis=0xaa8db0, shareList=0x0, allowDirect=1) at glxcmds.c:311
311     glxcmds.c: Datei oder Verzeichnis nicht gefunden.
        in glxcmds.c


Then on quitting X.org crashes without any further stop at that function.
Comment 7 Eric Anholt 2013-11-22 23:24:28 UTC
Are you still having this problem?  freedroid for me switches in and out of fullscreen fine, but it's correctly running direct rendered for me.
Comment 8 Martin Steigerwald 2013-11-23 10:52:38 UTC
Eric, I have no idea, I didn´t play it for a long time. I do not want to take time to try out at the moment. I suggest we just close it, as you tested it. I can reopen it, should it still be an issue.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.