Bug 27469

Summary: Mesa 7.8: Problems with two games, using OpenGL
Product: Mesa Reporter: Zbigniew <zb>
Component: Drivers/DRI/r200Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED INVALID QA Contact:
Severity: normal    
Priority: medium Keywords: NEEDINFO
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Zbigniew 2010-04-05 06:26:33 UTC
Cannot describe this so precisely, as in my earlier reports - but maybe it can be of some use to improve Mesa3D library:

I noticed problems with two games:

1. "Polynomial" (demo for Linux) http://dmytry.pandromeda.com/games/

After start (no graphics shown), there is crash. The last lines of its messages are:

(3169) last ShapeMaker::Update()
(545) TestTextureFrameBuffer::TestTextureFrameBuffer
glGenTextures: success
glBindTexture: success
[ 0]:glTexImage2D: error invalid value
[ 0]:glTexImage2D, second try at low quality: error invalid value
destroying framebuffer and associated texture: success
(1092) Drawer3D::DrawInternal fail 1
GLMTexture::LoadFromFile($$data/nebulabrot_composite_final_8.png)
Shader '$$data/background_v.glsl' compiled successfully
Shader '$$data/background_f.glsl' compiled successfully
Program linked successfully.
Shader '$$data/test_v.glsl' compiled successfully
Shader '$$data/test_f.glsl' compiled successfully
Program linked successfully.
Backtrace:
./bin/Polynomial32 [0x80d44f3]
[0xffffe400]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb6632450]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb6632e89]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb67101c5]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb6710584]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb670f211]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb6632ba9]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb6632e89]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb662a4c1]
/System/Links/Libraries/xorg/modules/dri/r200_dri.so [0xb6620bc7]
./bin/Polynomial32 [0x813ad97]
./bin/Polynomial32 [0x8146ca0]
./bin/Polynomial32 [0x8146e01]
./bin/Polynomial32 [0x80875eb]
./bin/Polynomial32 [0x8089e3f]
./bin/Polynomial32 [0x808b3d0]
./bin/Polynomial32 [0x807eb81]
./bin/Polynomial32 [0x81a27ce]
./bin/Polynomial32 [0x81a52c5]
./bin/Polynomial32 [0x81a2e30]
./bin/Polynomial32 [0x819ad31]
./bin/Polynomial32 [0x8194f08]
./bin/Polynomial32 [0x8199cbe]
./bin/Polynomial32 [0x8197752]
./bin/Polynomial32 [0x80dbce9]
/System/Links/Libraries/libc.so.6(__libc_start_main+0xe6) [0xb6a49416]
./bin/Polynomial32 [0x80511b1]
./Polynomial32: line 2:  5646 Unicestwiony           
+LD_LIBRARY_PATH=./bin/lib32 ./bin/Polynomial32

I contacted the author, and he answered:

"Unfortunately I think it cannot be played on mesa dri drivers - those are beta and it is very difficult to make opensource drivers for graphics hardware, even with some hardware documentation available. Judging by stacktrace, the crash happens outside my code, very little I can do."

2. CG Madness 1.2.2    http://cgmadness.sourceforge.net/

Compiled with just "make" it seems to be built properly, but right after start (no graphics shown) it freezes the system for good (even "Magic SysReq" doesn't work). On my hardware it's complaining (right before the lock-up) about lack of "framebuffer", and that there's no "OpenGL 2.0 shader" - but I'm not sure, is it related to following crash; in my opinion it should run with somewhat poorer look.

AFAIR (but I'm not 100% sure) I was playing the game without problems when I was using Mesa 7.5.1.


Like before: both games tested using Kernel 2.6.32.10, Glibc 2.10.1, Gobolinux 0.14 (32-bit), Mesa 7.8, Xorg 7.5, X-Server 1.7.6, IceWM 1.2.37, Pentium III/750, old mobo Intel BX-based, ATI Technologies Inc RV280 [Radeon 9200 PRO]
Comment 1 Ian Romanick 2010-04-05 13:07:55 UTC
(In reply to comment #0)

> Shader '$$data/background_v.glsl' compiled successfully
> Shader '$$data/background_f.glsl' compiled successfully
> Program linked successfully.
> Shader '$$data/test_v.glsl' compiled successfully
> Shader '$$data/test_f.glsl' compiled successfully
> Program linked successfully.

I'm pretty sure the r200 driver does not implement GLSL.  Try running in GDB.  Set a break point at _mesa_UseProgramObjectARB.  If that breakpoint is hit, the app is trying to use functionality that is not supported.  That it doesn't shouldn't surprise anyone. :)
Comment 2 Pauli 2010-04-06 01:47:39 UTC
Marking this invalid for 2 reasons

-Only one bug per report!
-There is no GLSL support with r200 card. You need at least r500 card for shaders. Using shaders or any others gl2+ features with driver that only reports version 1.3 is clear application bug.

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.