Hi guys.
I have updated to the newest ATI driver today and ever since my application freezes within a matter of minutes after start but completely random. A Java thread dump reveals that the GL thread is always at the same position:
Full thread dump Java HotSpot(TM) 64-Bit Server VM (17.1-b03 mixed mode):
"GL" prio=10 tid=0x00007fb5f88b8800 nid=0xc27 runnable [0x00007fb5f5a8c000]
java.lang.Thread.State: RUNNABLE
at org.lwjgl.opengl.LinuxContextImplementation.nSwapBuffers(Native Method)
at org.lwjgl.opengl.LinuxContextImplementation.swapBuffers(LinuxContextImplementation.java:79)
- locked <0x00007fb602124438> (a org.lwjgl.opengl.Context)
at org.lwjgl.opengl.Context.swapBuffers(Context.java:174)
at org.lwjgl.opengl.Display.swapBuffers(Display.java:652)
- locked <0x00007fb602139738> (a java.lang.Object)
at org.lwjgl.opengl.Display.update(Display.java:680)
- locked <0x00007fb602139738> (a java.lang.Object)
at org.lwjgl.opengl.Display.update(Display.java:662)
at com.jme.renderer.lwjgl.LWJGLRenderer.displayBackBuffer(LWJGLRenderer.java:507)
at com.jmex.game.StandardGame.run(StandardGame.java:255)
at java.lang.Thread.run(Thread.java:662)
Config:
- ATI E4690 gracard (with newest driver 11.01)
- Intel Core 2 Duo 8600
- 2 GB RAM
- Ubuntu 10.04 64 bit
- newest stable LWJGL release
Funny thing is that it doesnt happen on another machine with pretty much the same config but the graphics card is a consumer card with the exact same silica on it.
Anybody else experiencing these problems since 11.01 ATI driver on Ubuntu 10.04?
Any ideas? I would gladly look into it myself but I don't know how to get my hands on the native code. :-\
EDIT: I forgot: when the app freezes it suddenly uses 100% of one core, all in kernel space. So it looks like theres an endless loop in the native code maybe?
OK, let me rephrase ;)
(Where) can I see the source code of the implementation of the native method
org.lwjgl.opengl.LinuxContextImplementation.nSwapBuffers
Unfortunately sourceforge's online source code viewer is still down, so you'll have to download the lwjgl source code package.
The relevant code can be found in src/native/linux/org_lwjgl_opengl_LinuxContextImplementation.c file.
This is most likely a driver bug and unlikely something that can be fixed in LWJGL.
Closed.