Bug 29850

Summary: [r300g] regression: alienarena broken
Product: Mesa Reporter: David Heidelberg (okias) <david>
Component: Drivers/Gallium/r300Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED NOTOURBUG QA Contact:
Severity: major    
Priority: medium CC: sa
Version: unspecifiedKeywords: NEEDINFO
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: dmesg
alien_arena.jpeg

Description David Heidelberg (okias) 2010-08-28 02:39:49 UTC
Created attachment 38233 [details]
dmesg

Errors:
~ $ alienarena 
--------- [Loading Renderer] ---------
Initializing OpenGL display
...setting mode 3: 1024 768
Using XFree86-VidModeExtension Version 2.2
radeon: Successfully grabbed chipset info from kernel!
radeon: DRM version: 2.6.0 ID: 0x791f GB: 1 Z: 1
radeon: GART size: 509 MB VRAM size: 128 MB
radeon: HyperZ: NO
couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
Mesa: Mesa 7.9-devel DEBUG build Aug 28 2010 10:23:14
Mesa warning: couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
GL_VENDOR: X.Org R300 Project
GL_RENDERER: Gallium 0.4 on RS690
GL_VERSION: 2.1 Mesa 7.9-devel
GL_EXTENSIONS: GL_ARB_copy_buffer GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_elements_base_vertex GL_ARB_fragment_coord_conventions GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_half_float_vertex GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shading_language_120 GL_ARB_shadow GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_swizzle GL_ARB_transpose_matrix GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_logic_op GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_copy_texture GL_EXT_draw_range_elements GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXT_fog_coord GL_EXT_gpu_program_parameters GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil 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_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_subtexture GL_EXT_texture GL_EXT_texture3D 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_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_texture_swizzle GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_APPLE_packed_pixels GL_APPLE_vertex_array_object GL_ATI_blend_equation_separate GL_ATI_texture_env_combine3 GL_ATI_texture_mirror_once GL_ATI_separate_stencil GL_IBM_multimode_draw_arrays GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_INGR_blend_func_separate GL_MESA_pack_invert GL_MESA_ycbcr_texture GL_MESA_window_pos GL_NV_blend_square GL_NV_conditional_render GL_NV_light_max_exponent GL_NV_packed_depth_stencil GL_NV_texgen_reflection GL_NV_texture_env_combine4 GL_NV_texture_rectangle GL_OES_read_format GL_SGI_color_matrix GL_SGIS_generate_mipmap GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays GL_OES_EGL_image
...allowing CDS
...enabling GL_EXT_compiled_vertex_array
...ignoring GL_EXT_point_parameters
...3DFX_set_global_palette not found
...GL_EXT_shared_texture_palette not found
...using GL_ARB_multitexture
...GL_SGIS_multitexture not found
...using GL_ARB_texture_env_combine
...using GL_EXT_texture_filter_anisotropic
...using GL_EXT_stencil_wrap
...using GL_EXT_framebuffer_blit
...using GL_EXT_stencil_two_side
...using GL_ARB_vertex_buffer_object
...Initializing VBO cache
...Linking Error
Mesa: User error: GL_INVALID_OPERATION in glGetUniformfv(program)
...Linking Error
...Linking Error
qglBlitFramebufferEXT not found...
glGetError() = 0x502
------------------------------------
...Initializing IRC client
...IRC rejected due to unset player name
======== CRX Initialized ========

Mesa: User error: GL_INVALID_OPERATION in glDrawBuffer(buffer=0x405)

According dmesg.
Comment 1 David Heidelberg (okias) 2010-08-28 02:41:29 UTC
Created attachment 38234 [details]
alien_arena.jpeg

Screenshot
Comment 2 Marek Olšák 2010-08-28 19:58:29 UTC
I recall the game worked. Could you please bisect?
Comment 3 David Heidelberg (okias) 2010-09-11 01:55:40 UTC
sorry, I can't bisect... because portage :-(
Comment 4 Sven Arvidsson 2010-09-11 05:01:50 UTC
I don't think version 7.45 of the game ever worked, there's some discussion about this problem here:
http://www.phoronix.com/forums/showthread.php?t=24939&page=2

Not working with llvmpipe either, and according to the thread it's busted on Intel too, so I guess it's a general Mesa problem.
Comment 5 Marek Olšák 2010-09-11 09:19:09 UTC
The problem is:

Mesa: User error: GL_INVALID_OPERATION in glDrawBuffer(buffer=0x405)

That's why nothing is drawn to the main framebuffer. We should get alienarena people to fix this in their code.
Comment 6 Marek Olšák 2010-09-11 10:53:45 UTC
I've tried to bisect this, going as far back as April. No luck. I am pretty sure this game (or its previous version) worked in April, so this is probably not a bug on our side.

BTW r300c doesn't hit this bug because, unlike gallium, the game opts out to use FBOs because it gets an incomplete framebuffer.

Closing.

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.