When running the OpenArena anholt benchmark on my Radeon HD 3870 (RV670, PCIe) on my 64-bit Kubuntu 10.10 system with kernel 2.6.37 rc1 or rc2, and libdrm, mesa, xorg-video-ati from git master, I often get a GPU lockup on the level loading screen.
I can still log into the system through SSH and reboot it, but I cannot kill the openarena process. There is nothing in dmesg when the lockup occurs.
There is no such issue with kernel 2.6.36 and the same versions of libdrm, mesa, xorg-video-ati.
I forgot to tell that this is with KMS enabled and Gallium based r600g Mesa driver.
Can you bisect to see which commit is problematic?
Here it is:
d0f8a854c340986359a3b0a97e380c71def7a440 is the first bad commit
Author: Alex Deucher <firstname.lastname@example.org>
Date: Sat Sep 4 05:04:34 2010 -0400
drm/radeon/kms/r6xx+: use new style fencing (v3)
On r6xx+ a newer fence mechanism was implemented to replace
the old wait_until plus scratch regs setup. A single EOP event
will flush the destination caches, write a fence value, and generate
an interrupt. This is the recommended fence mechanism on r6xx+ asics.
This requires my previous writeback patch.
v2: fix typo that enabled event fence checking on all asics
rather than just r6xx+.
v3: properly enable EOP interrupts
Signed-off-by: Alex Deucher <email@example.com>
Signed-off-by: Dave Airlie <firstname.lastname@example.org>
:040000 040000 f9980a7432d5daac116586b03587fd90be768be9 ad8ce09ffba05e2438c50ddff1fa6243e1349ccd M drivers
You can disable wb by adding:
to your kernel command line.
With kernel 2.6.37-rc2 and option radeon.no_wb=1, it seems that there is no GPU lockup with the OpenArena benchmark and both the r600g and r600c Mesa drivers.
With the same kernel and without that option, the OpenArena benchmark locks the GPU with the r600g driver (runs fine with r600c).
Sounds like an r600g bug then.
Did you try with lastest mesa for r600g ? Following commit might help
I have just tested with the new kernel 2.6.37-rc3 and Mesa up to commit http://cgit.freedesktop.org/mesa/mesa/commit/?id=c63a86e1e5665fb5cd94de42d6c59171398e12ee, which should include the one you point out.
Still the same result: GPU lockup with OpenArena benchmark and the r600g driver.
Is it fullscreen or not ? If lockup happen is it always during loading screen ? Can you please attach kernel log after a lockup.
Created attachment 40485 [details]
dmesg output after GPU lockup
I have always run the OpenArena benchmark fullscreen. Actually, it is fullscreen on one screen (1920x1080) of my dual screen setup, the second screen (1920x1200) goes black when OpenArena is started. I have just checked in window mode with the same result (GPU lockup).
The lockup always happen on the loading screen, the exact time vary slightly: while loading sounds, while loading map... Once while bisecting the kernel, the lockup even happened before the loading screen was displayed (black screen). But I never get passed the loading screen.
About the kernel log, I used to have nothing in it, but this time I wait longer (~ 5 minutes) and I get a call trace, see attachment.
Created attachment 40880 [details]
kern.log extract on GPU lockup with kernel 2.6.35rc5
I have just checked with the new kernel 2.6.37rc5 and updated Mesa packages (http://cgit.freedesktop.org/mesa/mesa/commit?id=44094356149d9a63c197e15f9db344ef2f651d86) with the same result: OpenArena benchmark cause GPU lockup with r600g driver.
A difference with previous tests (in case it matters): I am now running KWin in OpenGL compositing mode (with r600c driver), it was previously running in XRender compositing mode.
Can you please confirm that patch :
Applied on top of lastest mesa fix the issue for you ?
Your patch applied on top of Mesa master (http://cgit.freedesktop.org/mesa/mesa/commit/?id=72845d206e692581b6084c56b8d1f3bc689e8a03) seems to fix the issue with kernel 2.6.37rc5 for me.
I have run the OpenArena benchmark a few times, and play a level of the game without a GPU lockup.
I have seen that the patch has been commited to Mesa, so I have checked with updated Mesa packages (http://cgit.freedesktop.org/mesa/mesa/commit/?id=05e534e6c4395269b1ca3a9694a1f437363dd186) and I can confirm that there is no more GPU lockup with Linux kernel 2.6.37rc5.