Page 1 of 1

shader seg fault - linux/radeon

Posted: Fri Oct 21, 2016 6:34 pm
by brak
The game crashes with a segmentation fault any time I use whirlwind, also once when someone used Repulsion on me. Both use the spinningwinds shader. Disabling OpenGL Shaders in the Options menu fixes the problem. I'm using a radeon video card with the vanilla Debian 3.16.36 kernel driver and mesa:

Code: Select all

00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Mullins [Radeon R4/R5 Graphics] (rev 05) (prog-if 00 [VGA controller])
        Subsystem: Hewlett-Packard Company Device 22cd
        Flags: bus master, fast devsel, latency 0, IRQ 82
        Memory at e0000000 (64-bit, prefetchable) [size=256M]
        Memory at f0000000 (64-bit, prefetchable) [size=8M]
        I/O ports at 3000 [size=256]
        Memory at f0e00000 (32-bit, non-prefetchable) [size=256K]
        Expansion ROM at f0e80000 [disabled] [size=128K]
        Capabilities: [48] Vendor Specific Information: Len=08 <?>
        Capabilities: [50] Power Management version 3
        Capabilities: [58] Express Root Complex Integrated Endpoint, MSI 00
        Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
        Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
        Capabilities: [270] #19
        Capabilities: [2b0] Address Translation Service (ATS)
        Capabilities: [2c0] #13
        Capabilities: [2d0] #1b
        Kernel driver in use: radeon
glxinfo (truncated):

Code: Select all

% glxinfo -s
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_create_context
    GLX_ARB_create_context_profile
    GLX_ARB_fbconfig_float
    GLX_ARB_framebuffer_sRGB
    GLX_ARB_multisample
    GLX_EXT_create_context_es2_profile
    GLX_EXT_framebuffer_sRGB
    GLX_EXT_import_context
    GLX_EXT_texture_from_pixmap
    GLX_EXT_visual_info
    GLX_EXT_visual_rating
    GLX_INTEL_swap_event
    GLX_MESA_copy_sub_buffer
    GLX_OML_swap_method
    GLX_SGIS_multisample
    GLX_SGIX_fbconfig
    GLX_SGIX_pbuffer
    GLX_SGIX_visual_select_group
    GLX_SGI_swap_control
    
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
    GLX_ARB_create_context
    GLX_ARB_create_context_profile
    GLX_ARB_create_context_robustness
    GLX_ARB_fbconfig_float
    GLX_ARB_framebuffer_sRGB
    GLX_ARB_get_proc_address
    GLX_ARB_multisample
    GLX_EXT_buffer_age
    GLX_EXT_create_context_es2_profile
    GLX_EXT_fbconfig_packed_float
    GLX_EXT_framebuffer_sRGB
    GLX_EXT_import_context
    GLX_EXT_texture_from_pixmap
    GLX_EXT_visual_info
    GLX_EXT_visual_rating
    GLX_INTEL_swap_event
    GLX_MESA_copy_sub_buffer
    GLX_MESA_multithread_makecurrent
    GLX_MESA_query_renderer
    GLX_MESA_swap_control
    GLX_OML_swap_method
    GLX_OML_sync_control
    GLX_SGIS_multisample
    GLX_SGIX_fbconfig
    GLX_SGIX_pbuffer
    GLX_SGIX_visual_select_group
    GLX_SGI_make_current_read
    GLX_SGI_swap_control
    GLX_SGI_video_sync
    
GLX version: 1.4
GLX extensions:
    GLX_ARB_create_context
    GLX_ARB_create_context_profile
    GLX_ARB_fbconfig_float
    GLX_ARB_framebuffer_sRGB
    GLX_ARB_get_proc_address
    GLX_ARB_multisample
    GLX_EXT_create_context_es2_profile
    GLX_EXT_framebuffer_sRGB
    GLX_EXT_import_context
    GLX_EXT_texture_from_pixmap
    GLX_EXT_visual_info
    GLX_EXT_visual_rating
    GLX_INTEL_swap_event
    GLX_MESA_copy_sub_buffer
    GLX_MESA_multithread_makecurrent
    GLX_MESA_query_renderer
    GLX_MESA_swap_control
    GLX_OML_swap_method
    GLX_OML_sync_control
    GLX_SGIS_multisample
    GLX_SGIX_fbconfig
    GLX_SGIX_pbuffer
    GLX_SGIX_visual_select_group
    GLX_SGI_make_current_read
    GLX_SGI_swap_control
    GLX_SGI_video_sync
    
OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD MULLINS
OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.3.2
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
    GL_AMD_conservative_depth
    GL_AMD_draw_buffers_blend
    GL_AMD_seamless_cubemap_per_texture
    GL_AMD_shader_stencil_export
    GL_AMD_shader_trinary_minmax
    GL_AMD_vertex_shader_layer
    GL_ANGLE_texture_compression_dxt3
    GL_ANGLE_texture_compression_dxt5
    GL_ARB_ES2_compatibility
    GL_ARB_ES3_compatibility
    GL_ARB_base_instance
    GL_ARB_blend_func_extended
    GL_ARB_buffer_storage
    GL_ARB_clear_buffer_object
    GL_ARB_compressed_texture_pixel_storage
    GL_ARB_conservative_depth
    GL_ARB_copy_buffer
    GL_ARB_debug_output
    GL_ARB_depth_buffer_float
    GL_ARB_depth_clamp
    GL_ARB_draw_buffers
    GL_ARB_draw_buffers_blend
    GL_ARB_draw_elements_base_vertex
    GL_ARB_draw_indirect
    GL_ARB_draw_instanced
    GL_ARB_explicit_attrib_location
    GL_ARB_explicit_uniform_location
    GL_ARB_fragment_coord_conventions
    GL_ARB_fragment_shader
    GL_ARB_framebuffer_object
    GL_ARB_framebuffer_sRGB
    GL_ARB_get_program_binary
    GL_ARB_half_float_pixel
    GL_ARB_half_float_vertex
    GL_ARB_instanced_arrays
    GL_ARB_internalformat_query
    GL_ARB_invalidate_subdata
    GL_ARB_map_buffer_alignment
    GL_ARB_map_buffer_range
    GL_ARB_multi_bind
    GL_ARB_multi_draw_indirect
    GL_ARB_occlusion_query2
    GL_ARB_pixel_buffer_object
    GL_ARB_point_sprite
    GL_ARB_provoking_vertex
    GL_ARB_robustness
    GL_ARB_sample_shading
    GL_ARB_sampler_objects
    GL_ARB_seamless_cube_map
    GL_ARB_seamless_cubemap_per_texture
    GL_ARB_separate_shader_objects
    GL_ARB_shader_bit_encoding
    GL_ARB_shader_objects
    GL_ARB_shader_stencil_export
    GL_ARB_shader_texture_lod
    GL_ARB_shading_language_420pack
    GL_ARB_shading_language_packing
    GL_ARB_stencil_texturing
    GL_ARB_sync
    GL_ARB_texture_barrier
    GL_ARB_texture_buffer_object
    GL_ARB_texture_buffer_object_rgb32
    GL_ARB_texture_buffer_range
    GL_ARB_texture_compression_bptc
    GL_ARB_texture_compression_rgtc
    GL_ARB_texture_cube_map_array
    GL_ARB_texture_float
    GL_ARB_texture_gather
    GL_ARB_texture_mirror_clamp_to_edge
    GL_ARB_texture_multisample
    GL_ARB_texture_non_power_of_two
    GL_ARB_texture_query_levels
    GL_ARB_texture_query_lod
    GL_ARB_texture_rectangle
    GL_ARB_texture_rg
    GL_ARB_texture_rgb10_a2ui
    GL_ARB_texture_storage
    GL_ARB_texture_storage_multisample
    GL_ARB_texture_swizzle
    GL_ARB_timer_query
    GL_ARB_transform_feedback2
    GL_ARB_transform_feedback3
    GL_ARB_transform_feedback_instanced
    GL_ARB_uniform_buffer_object
    GL_ARB_vertex_array_bgra
    GL_ARB_vertex_array_object
    GL_ARB_vertex_attrib_binding
    GL_ARB_vertex_shader
    GL_ARB_vertex_type_10f_11f_11f_rev
    GL_ARB_vertex_type_2_10_10_10_rev
    GL_ATI_blend_equation_separate
    GL_ATI_texture_compression_3dc
    GL_ATI_texture_float
    GL_ATI_texture_mirror_once
    GL_EXT_abgr
    GL_EXT_blend_equation_separate
    GL_EXT_draw_buffers2
    GL_EXT_draw_instanced
    GL_EXT_framebuffer_blit
    GL_EXT_framebuffer_multisample
    GL_EXT_framebuffer_multisample_blit_scaled
    GL_EXT_framebuffer_sRGB
    GL_EXT_packed_depth_stencil
    GL_EXT_packed_float
    GL_EXT_pixel_buffer_object
    GL_EXT_provoking_vertex
    GL_EXT_shader_integer_mix
    GL_EXT_texture_array
    GL_EXT_texture_compression_dxt1
    GL_EXT_texture_compression_latc
    GL_EXT_texture_compression_rgtc
    GL_EXT_texture_compression_s3tc
    GL_EXT_texture_filter_anisotropic
    GL_EXT_texture_integer
    GL_EXT_texture_mirror_clamp
    GL_EXT_texture_sRGB
    GL_EXT_texture_sRGB_decode
    GL_EXT_texture_shared_exponent
    GL_EXT_texture_snorm
    GL_EXT_texture_swizzle
    GL_EXT_timer_query
    GL_EXT_transform_feedback
    GL_EXT_vertex_array_bgra
    GL_IBM_multimode_draw_arrays
    GL_KHR_debug
    GL_MESA_pack_invert
    GL_MESA_texture_signed_rgba
    GL_NV_conditional_render
    GL_NV_depth_clamp
    GL_NV_packed_depth_stencil
    GL_NV_texture_barrier
    GL_NV_vdpau_interop
    GL_OES_EGL_image
    GL_OES_read_format
    GL_S3_s3tc
    

OpenGL version string: 3.0 Mesa 10.3.2
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
    GL_AMD_conservative_depth
    GL_AMD_draw_buffers_blend
    GL_AMD_seamless_cubemap_per_texture
    GL_AMD_shader_stencil_export
    GL_AMD_shader_trinary_minmax
    GL_ANGLE_texture_compression_dxt3
    GL_ANGLE_texture_compression_dxt5
    GL_APPLE_packed_pixels
    GL_APPLE_vertex_array_object
    GL_ARB_ES2_compatibility
    GL_ARB_ES3_compatibility
    GL_ARB_base_instance
    GL_ARB_blend_func_extended
    GL_ARB_buffer_storage
    GL_ARB_clear_buffer_object
    GL_ARB_color_buffer_float
    GL_ARB_compressed_texture_pixel_storage
    GL_ARB_conservative_depth
    GL_ARB_copy_buffer
    GL_ARB_debug_output
    GL_ARB_depth_buffer_float
    GL_ARB_depth_clamp
    GL_ARB_depth_texture
    GL_ARB_draw_buffers
    GL_ARB_draw_buffers_blend
    GL_ARB_draw_elements_base_vertex
    GL_ARB_draw_instanced
    GL_ARB_explicit_attrib_location
    GL_ARB_explicit_uniform_location
    GL_ARB_fragment_coord_conventions
    GL_ARB_fragment_program
    GL_ARB_fragment_program_shadow
    GL_ARB_fragment_shader
    GL_ARB_framebuffer_object
    GL_ARB_framebuffer_sRGB
    GL_ARB_get_program_binary
    GL_ARB_half_float_pixel
    GL_ARB_half_float_vertex
    GL_ARB_instanced_arrays
    GL_ARB_internalformat_query
    GL_ARB_invalidate_subdata
    GL_ARB_map_buffer_alignment
    GL_ARB_map_buffer_range
    GL_ARB_multi_bind
    GL_ARB_multisample
    GL_ARB_multitexture
    GL_ARB_occlusion_query
    GL_ARB_occlusion_query2
    GL_ARB_pixel_buffer_object
    GL_ARB_point_parameters
    GL_ARB_point_sprite
    GL_ARB_provoking_vertex
    GL_ARB_robustness
    GL_ARB_sample_shading
    GL_ARB_sampler_objects
    GL_ARB_seamless_cube_map
    GL_ARB_seamless_cubemap_per_texture
    GL_ARB_separate_shader_objects
    GL_ARB_shader_bit_encoding
    GL_ARB_shader_objects
    GL_ARB_shader_stencil_export
    GL_ARB_shader_texture_lod
    GL_ARB_shading_language_100
    GL_ARB_shading_language_420pack
    GL_ARB_shading_language_packing
    GL_ARB_shadow
    GL_ARB_stencil_texturing
    GL_ARB_sync
    GL_ARB_texture_barrier
    GL_ARB_texture_border_clamp
    GL_ARB_texture_compression
    GL_ARB_texture_compression_bptc
    GL_ARB_texture_compression_rgtc
    GL_ARB_texture_cube_map
    GL_ARB_texture_cube_map_array
    GL_ARB_texture_env_add
    GL_ARB_texture_env_combine
    GL_ARB_texture_env_crossbar
    GL_ARB_texture_env_dot3
    GL_ARB_texture_float
    GL_ARB_texture_gather
    GL_ARB_texture_mirror_clamp_to_edge
    GL_ARB_texture_mirrored_repeat
    GL_ARB_texture_multisample
    GL_ARB_texture_non_power_of_two
    GL_ARB_texture_query_levels
    GL_ARB_texture_query_lod
    GL_ARB_texture_rectangle
    GL_ARB_texture_rg
    GL_ARB_texture_rgb10_a2ui
    GL_ARB_texture_storage
    GL_ARB_texture_storage_multisample
    GL_ARB_texture_swizzle
    GL_ARB_timer_query
    GL_ARB_transform_feedback2
    GL_ARB_transform_feedback3
    GL_ARB_transform_feedback_instanced
    GL_ARB_transpose_matrix
    GL_ARB_uniform_buffer_object
    GL_ARB_vertex_array_bgra
    GL_ARB_vertex_array_object
    GL_ARB_vertex_attrib_binding
    GL_ARB_vertex_buffer_object
    GL_ARB_vertex_program
    GL_ARB_vertex_shader
    GL_ARB_vertex_type_10f_11f_11f_rev
    GL_ARB_vertex_type_2_10_10_10_rev
    GL_ARB_window_pos
    GL_ATI_blend_equation_separate
    GL_ATI_draw_buffers
    GL_ATI_separate_stencil
    GL_ATI_texture_compression_3dc
    GL_ATI_texture_env_combine3
    GL_ATI_texture_float
    GL_ATI_texture_mirror_once
    GL_EXT_abgr
    GL_EXT_bgra
    GL_EXT_blend_color
    GL_EXT_blend_equation_separate
    GL_EXT_blend_func_separate
    GL_EXT_blend_minmax
    GL_EXT_blend_subtract
    GL_EXT_compiled_vertex_array
    GL_EXT_copy_texture
    GL_EXT_draw_buffers2
    GL_EXT_draw_instanced
    GL_EXT_draw_range_elements
    GL_EXT_fog_coord
    GL_EXT_framebuffer_blit
    GL_EXT_framebuffer_multisample
    GL_EXT_framebuffer_multisample_blit_scaled
    GL_EXT_framebuffer_object
    GL_EXT_framebuffer_sRGB
    GL_EXT_gpu_program_parameters
    GL_EXT_multi_draw_arrays
    GL_EXT_packed_depth_stencil
    GL_EXT_packed_float
    GL_EXT_packed_pixels
    GL_EXT_pixel_buffer_object
    GL_EXT_point_parameters
    GL_EXT_polygon_offset
    GL_EXT_provoking_vertex
    GL_EXT_rescale_normal
    GL_EXT_secondary_color
    GL_EXT_separate_specular_color
    GL_EXT_shader_integer_mix
    GL_EXT_shadow_funcs
    GL_EXT_stencil_two_side
    GL_EXT_stencil_wrap
    GL_EXT_subtexture
    GL_EXT_texture
    GL_EXT_texture3D
    GL_EXT_texture_array
    GL_EXT_texture_compression_dxt1
    GL_EXT_texture_compression_latc
    GL_EXT_texture_compression_rgtc
    GL_EXT_texture_compression_s3tc
    GL_EXT_texture_cube_map
    GL_EXT_texture_edge_clamp
    GL_EXT_texture_env_add
    GL_EXT_texture_env_combine
    GL_EXT_texture_env_dot3
    GL_EXT_texture_filter_anisotropic
    GL_EXT_texture_integer
    GL_EXT_texture_lod_bias
    GL_EXT_texture_mirror_clamp
    GL_EXT_texture_object
    GL_EXT_texture_rectangle
    GL_EXT_texture_sRGB
    GL_EXT_texture_sRGB_decode
    GL_EXT_texture_shared_exponent
    GL_EXT_texture_snorm
    GL_EXT_texture_swizzle
    GL_EXT_timer_query
    GL_EXT_transform_feedback
    GL_EXT_vertex_array
    GL_EXT_vertex_array_bgra
    GL_IBM_multimode_draw_arrays
    GL_IBM_rasterpos_clip
    GL_IBM_texture_mirrored_repeat
    GL_INGR_blend_func_separate
    GL_KHR_debug
    GL_MESA_pack_invert
    GL_MESA_texture_signed_rgba
    GL_MESA_window_pos
    GL_NV_blend_square
    GL_NV_conditional_render
    GL_NV_depth_clamp
    GL_NV_fog_distance
    GL_NV_light_max_exponent
    GL_NV_packed_depth_stencil
    GL_NV_primitive_restart
    GL_NV_texgen_reflection
    GL_NV_texture_barrier
    GL_NV_texture_env_combine4
    GL_NV_texture_rectangle
    GL_NV_vdpau_interop
    GL_OES_EGL_image
    GL_OES_read_format
    GL_S3_s3tc
    GL_SGIS_generate_mipmap
    GL_SGIS_texture_border_clamp
    GL_SGIS_texture_edge_clamp
    GL_SGIS_texture_lod
    GL_SUN_multi_draw_arrays
    

OpenGL ES profile version string: OpenGL ES 3.0 Mesa 10.3.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.0
OpenGL ES profile extensions:
    GL_ANGLE_texture_compression_dxt3
    GL_ANGLE_texture_compression_dxt5
    GL_APPLE_texture_max_level
    GL_EXT_blend_minmax
    GL_EXT_color_buffer_float
    GL_EXT_discard_framebuffer
    GL_EXT_map_buffer_range
    GL_EXT_multi_draw_arrays
    GL_EXT_read_format_bgra
    GL_EXT_separate_shader_objects
    GL_EXT_shader_integer_mix
    GL_EXT_texture_compression_dxt1
    GL_EXT_texture_filter_anisotropic
    GL_EXT_texture_format_BGRA8888
    GL_EXT_texture_rg
    GL_EXT_texture_type_2_10_10_10_REV
    GL_EXT_unpack_subimage
    GL_NV_draw_buffers
    GL_NV_fbo_color_attachments
    GL_NV_read_buffer
    GL_OES_EGL_image
    GL_OES_EGL_image_external
    GL_OES_compressed_ETC1_RGB8_texture
    GL_OES_depth24
    GL_OES_depth_texture
    GL_OES_depth_texture_cube_map
    GL_OES_element_index_uint
    GL_OES_fbo_render_mipmap
    GL_OES_get_program_binary
    GL_OES_mapbuffer
    GL_OES_packed_depth_stencil
    GL_OES_rgb8_rgba8
    GL_OES_standard_derivatives
    GL_OES_stencil8
    GL_OES_surfaceless_context
    GL_OES_texture_3D
    GL_OES_texture_npot
    GL_OES_vertex_array_object
log from the Repulsion:

Code: Select all

[LOG]   Atuond the thalore uses Repulsion.
checkHit        46      vs      12      => chance to hit        95
[KNOCKBACK] from        5       5       over    7
[KNOCKBACK] try 7       8       6
[KNOCKBACK] try 8       9       5       ::
[KNOCKBACK] try 9       10      4       ::
[KNOCKBACK] try 10      11      3       ::
[KNOCKBACK] try 11      12      2       ::
[KNOCKBACK] try 12      13      1       ::
[KNOCKBACK] try 13      14      0       ::
[KNOCKBACK] ok knocked to       13      14      ::
[LOG]   Brak is dazed!
[SHADER] Loading from /data/gfx/shaders/spinningwinds2.lua
[SHADER] Loaded shader with totalname   spinningwinds2[ellipsoidalFactor=vec2(1,1),noup=0,time_factor=2000,verticalIntensityAdjust=-3]
New GL Shader program 128
New GL Shader 129 of type 35632
[SHADER] created fragment shader from /data/gfx/shaders/spinningwinds.frag
*p 128: Uniform: 0: 8B5E tex
*p 128: Uniform: 1: 1406 tick
*p 128: Uniform: 2: 1406 time_factor
*p 128: Uniform: 3: 1406 noup
*p 128: Uniform: 4: 8B50 ellipsoidalFactor
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::loadRegToStackSlot - Can't retrieve spilled VGPR!
LLVM triggered Diagnostic Handler: SIInstrInfo::storeRegToStackSlot - Can't spill VGPR!
zsh: segmentation fault  ./t-engine
log from using Whirlwind with gdb (identical LLVM/VGPR messages omitted):

Code: Select all

[LOG]   Brak uses Whirlwind.
[SHADER] Loading from /data/gfx/shaders/spinningwinds2.lua
[SHADER] Loaded shader with totalname   spinningwinds2[ellipsoidalFactor=vec2(1,1),noup=0,time_factor=2000,verticalIntensityAdjust=-3]
New GL Shader program 33
New GL Shader 34 of type 35632
[SHADER] created fragment shader from /data/gfx/shaders/spinningwinds.frag
*p 33: Uniform: 0: 8B5E tex
*p 33: Uniform: 1: 1406 tick
*p 33: Uniform: 2: 1406 time_factor
*p 33: Uniform: 3: 1406 noup
*p 33: Uniform: 4: 8B50 ellipsoidalFactor

Program received signal SIGSEGV, Segmentation fault.
0x00007fffeb356b81 in llvm::SIRegisterInfo::eliminateFrameIndex(llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int, unsigned int, llvm::RegScavenger*) const ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
backtrace:

Code: Select all

(gdb) bt
#0  0x00007fffeb356b81 in llvm::SIRegisterInfo::eliminateFrameIndex(llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int, unsigned int, llvm::RegScavenger*) const ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#1  0x00007fffeb93d460 in llvm::RegScavenger::scavengeRegister(llvm::TargetRegisterClass const*, llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int) ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#2  0x00007fffeb356bcd in llvm::SIRegisterInfo::eliminateFrameIndex(llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int, unsigned int, llvm::RegScavenger*) const ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#3  0x00007fffeb93d3e3 in llvm::RegScavenger::scavengeRegister(llvm::TargetRegisterClass const*, llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int) ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#4  0x00007fffeb356bcd in llvm::SIRegisterInfo::eliminateFrameIndex(llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int, unsigned int, llvm::RegScavenger*) const ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#5  0x00007fffeb93d3e3 in llvm::RegScavenger::scavengeRegister(llvm::TargetRegisterClass const*, llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#6  0x00007fffeb356bcd in llvm::SIRegisterInfo::eliminateFrameIndex(llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int, unsigned int, llvm::RegScavenger*) const ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#7  0x00007fffeb93d3e3 in llvm::RegScavenger::scavengeRegister(llvm::TargetRegisterClass const*, llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int) ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#8  0x00007fffeb356bcd in llvm::SIRegisterInfo::eliminateFrameIndex(llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int, unsigned int, llvm::RegScavenger*) const ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#9  0x00007fffeb93d3e3 in llvm::RegScavenger::scavengeRegister(llvm::TargetRegisterClass const*, llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int) ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#10 0x00007fffeb356bcd in llvm::SIRegisterInfo::eliminateFrameIndex(llvm::MachineBasicBlock::bundle_iterator<llvm::MachineInstr, llvm::ilist_iterator<llvm::MachineInstr> >, int, unsigned int, llvm::RegScavenger*) const ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#11 0x00007fffeb90dac1 in llvm::PEI::replaceFrameIndices(llvm::MachineBasicBlock*, llvm::MachineFunction&, int&) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#12 0x00007fffeb910487 in ?? () from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#13 0x00007fffeb91081a in llvm::PEI::runOnMachineFunction(llvm::MachineFunction&) () from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#14 0x00007fffeb4f6a17 in llvm::FPPassManager::runOnFunction(llvm::Function&)
    () from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#15 0x00007fffeb4f6a9b in llvm::FPPassManager::runOnModule(llvm::Module&) ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#16 0x00007fffeb4f9459 in llvm::legacy::PassManagerImpl::run(llvm::Module&) ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#17 0x00007fffebb0ad5d in ?? () from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#18 0x00007fffebb0af17 in LLVMTargetMachineEmitToMemoryBuffer ()
   from /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1
#19 0x00007fffed7354ed in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#20 0x00007fffed7e2f63 in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#21 0x00007fffed7e3914 in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#22 0x00007fffed7e90ef in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#23 0x00007fffed7e91d4 in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
---Type <return> to continue, or q <return> to quit---
#24 0x00007fffed458e8e in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#25 0x00007fffed45a10e in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#26 0x00007fffed4237d7 in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#27 0x00007fffed42050f in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#28 0x00007fffed434af5 in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#29 0x00007fffed40703e in ?? ()
   from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#30 0x000000000049098e in ?? ()
#31 0x0000000000490c2e in ?? ()
#32 0x00000000004db8bb in ?? ()
#33 0x00000000004c4210 in lua_pcall ()
#34 0x000000000049bca5 in do_quad ()
#35 0x000000000049cde5 in ?? ()
#36 0x00000000004db8bb in ?? ()
#37 0x00000000004c4210 in lua_pcall ()
#38 0x000000000048e219 in call_draw ()
#39 0x000000000048e5a8 in on_redraw ()
#40 0x0000000000440498 in main ()
relevant packages are up to date for Debian stable:

Code: Select all

libllvm3.5:
  Installed: 1:3.5-10
  Candidate: 1:3.5-10
  Version table:
 *** 1:3.5-10 0
        990 http://ftp.us.debian.org/debian/ stable/main amd64 Packages

libgl1-mesa-dri:
  Installed: 10.3.2-1+deb8u1
  Candidate: 10.3.2-1+deb8u1
  Version table:
 *** 10.3.2-1+deb8u1 0
        990 http://ftp.us.debian.org/debian/ stable/main amd64 Packages

linux-image-3.16.0-4-amd64:
  Installed: 3.16.36-1+deb8u2
  Candidate: 3.16.36-1+deb8u2
  Version table:
 *** 3.16.36-1+deb8u2 0
        990 http://security.debian.org/ stable/updates/main amd64 Packages
Let me know if you need anything else and thanks for a great game.

Re: shader seg fault - linux/radeon

Posted: Mon Nov 21, 2016 1:24 pm
by Feanor1397
Can confirm this. Segfault on spinningwinds shader
Fragment of game log (truncated because game freeze)

Code: Select all

[LOG]	Gladiator uses Repulsion.
checkHit	22	vs	7	=> chance to hit	88
[KNOCKBACK] from	10	10	over	4
[KNOCKBACK] try	12	6	3
[KNOCKBACK] try	13	6	2	::
[KNOCKBACK] try	14	6	1	::
[KNOCKBACK] try	15	6	0	::	true
[KNOCKBACK] failsafe knocked to	14	6	::
[LOG]	Erinor is dazed!
[SHADER] Loading from /data/gfx/shaders/spinningwinds2.lua
[SHADER] Loaded shader with totalname	spinningwinds2[ellipsoidalFactor=vec2(1,1),noup=0,time_factor=2000,verticalIntensityAdjust=-3]
New GL Shader program 74
New GL Shader 75 of type 35632
[SHADER] created fragment shader from /data/gfx/shaders/spinningwinds.frag
*p 74: Uniform: 0: 8B5E tex
*p 74: Uniform: 1: 1406 tick
*p 74: Uniform: 2: 1406 time_factor
*p 74: Uniform: 3: 1406 noup
*p 74: Uniform: 4: 8B50 ellipsoidalFactor
[LOG]	Burning from Erinor hits Gladiator for #LIGHT_RED#7 fire#LAST# damage.
[LOG]	#00ff00##UID:403:0#Talent Timeport: Point Zero is ready to use.
[LOG]	#00ff00##UID:1072:0#Talent Arrow Stitching is ready to use.
[LOG]	#00ff00##UID:157:0#Talent Rune: Phase Door is ready to use.
[LOG]	
[ENGINE] Setting requested FPS to 2 (500 ms%
and this from dmesg

Code: Select all

[516027.081914] radeon 0000:01:00.0: ring 3 stalled for more than 10080msec
[516027.081922] radeon 0000:01:00.0: GPU lockup (current fence id 0x0000000000c8ecd3 last fence id 0x0000000000c8ece4 on ring 3)
[516027.103917] radeon 0000:01:00.0: Saved 338 dwords of commands on ring 0.
[516027.103931] radeon 0000:01:00.0: GPU softreset: 0x0000000D
[516027.103934] radeon 0000:01:00.0:   GRBM_STATUS               = 0xE5700828
[516027.103936] radeon 0000:01:00.0:   GRBM_STATUS_SE0           = 0xFC000001
[516027.103937] radeon 0000:01:00.0:   GRBM_STATUS_SE1           = 0x00000007
[516027.103939] radeon 0000:01:00.0:   SRBM_STATUS               = 0x200000C0
[516027.103941] radeon 0000:01:00.0:   SRBM_STATUS2              = 0x00000000
[516027.103942] radeon 0000:01:00.0:   R_008674_CP_STALLED_STAT1 = 0x00000000
[516027.103944] radeon 0000:01:00.0:   R_008678_CP_STALLED_STAT2 = 0x00010802
[516027.103946] radeon 0000:01:00.0:   R_00867C_CP_BUSY_STAT     = 0x00028086
[516027.103948] radeon 0000:01:00.0:   R_008680_CP_STAT          = 0x80038647
[516027.103949] radeon 0000:01:00.0:   R_00D034_DMA_STATUS_REG   = 0x44481106
[516027.113660] radeon 0000:01:00.0: GRBM_SOFT_RESET=0x00007F6B
[516027.113714] radeon 0000:01:00.0: SRBM_SOFT_RESET=0x00100100
[516027.114912] radeon 0000:01:00.0:   GRBM_STATUS               = 0x00003828
[516027.114913] radeon 0000:01:00.0:   GRBM_STATUS_SE0           = 0x00000007
[516027.114915] radeon 0000:01:00.0:   GRBM_STATUS_SE1           = 0x00000007
[516027.114917] radeon 0000:01:00.0:   SRBM_STATUS               = 0x200000C0
[516027.114919] radeon 0000:01:00.0:   SRBM_STATUS2              = 0x00000000
[516027.114920] radeon 0000:01:00.0:   R_008674_CP_STALLED_STAT1 = 0x00000000
[516027.114922] radeon 0000:01:00.0:   R_008678_CP_STALLED_STAT2 = 0x00000000
[516027.114924] radeon 0000:01:00.0:   R_00867C_CP_BUSY_STAT     = 0x00000000
[516027.114926] radeon 0000:01:00.0:   R_008680_CP_STAT          = 0x00000000
[516027.114927] radeon 0000:01:00.0:   R_00D034_DMA_STATUS_REG   = 0x44C83D57
[516027.114942] radeon 0000:01:00.0: GPU reset succeeded, trying to resume
[516027.133797] [drm] enabling PCIE gen 2 link speeds, disable with radeon.pcie_gen2=0
[516027.136477] [drm] PCIE GART of 1024M enabled (table at 0x000000000014C000).
[516027.136552] radeon 0000:01:00.0: WB enabled
[516027.136556] radeon 0000:01:00.0: fence driver on ring 0 use gpu addr 0x0000000040000c00 and cpu addr 0xffff880108c71c00
[516027.136558] radeon 0000:01:00.0: fence driver on ring 3 use gpu addr 0x0000000040000c0c and cpu addr 0xffff880108c71c0c
[516027.137311] radeon 0000:01:00.0: fence driver on ring 5 use gpu addr 0x000000000005c418 and cpu addr 0xffffc90000e1c418
[516027.153625] [drm] ring test on 0 succeeded in 1 usecs
[516027.153630] [drm] ring test on 3 succeeded in 2 usecs
[516027.352112] [drm] ring test on 5 succeeded in 1 usecs
[516027.352118] [drm] UVD initialized successfully.
[516029.344711] [drm:r600_ib_test [radeon]] *ERROR* radeon: fence wait timed out.
[516029.344736] [drm:radeon_ib_ring_tests [radeon]] *ERROR* radeon: failed testing IB on GFX ring (-110).
Using latest mesa build from git (13.1) same problem with older versions of mesa