[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Radeon r300 3D broken in new mesa



Hi everyone!
I just updated my eMac 1.42GHz with radeon 9600 for the first time in... perhaps a couple of years. Funnily enough just before I updated I was trying to get openarena to run, and found that it crashes my machine after the main menu appears or just before, with some errors:

radeon 0000:00:10.0: GPU lockup (current fence id 0x0000000000001298 last fence id 0x000000000000129c on ring 0)
radeon: wait for empty RBBM fifo failed! Bad things might happen.
Failed to wait GUI idle while programming pipes. Bad things might happen.

(gathered from a tail on /var/log/messages just before the crash), closely followed by a blank screen and dead ssh, requiring a reboot. However kodi ran fine and glxgears showed 800-900 fps so 3D was mostly working. I have some version numbers for where I was previously:

xserver-xorg-video-radeon:1:19.1.0-2
firmware-amd-graphics:20200918-1
libdrm-radeon1:2.4.103-1
kernel: 5.5.0-1-powerpc
mesa: 20.0.2-1

After updating I am on kernel 6.0.0-4-powerpc and mesa 22.2.4-1 and although X runs, attempting to do anything with 3D results in the screen flashing on and off, and X goes dead. However ssh stays alive and I can see some repeating output in dmesg (I've appended it to the bottom of this message).

I tried booting up with my old kernel, and everything is still broken. Downgrading mesa and libdrm does get everything working again (as well as it did previously anyway - openarena still causes a total system crash). This isn't a kernel bug - things are working with the latest kernel after downgrading mesa.

Has anyone else experienced this/know of a relevant bug report/workaround/mailing list chat? A quick search has only shown up some pretty stale bug reports on freedesktop.org.

Thanks,
Ed

[  253.927650] radeon 0000:00:10.0: ring 0 stalled for more than 10196msec
[  253.927684] radeon 0000:00:10.0: GPU lockup (current fence id 0x000000000000087e last fence id 0x0000000000000880 on ring 0)
[  254.065322] Failed to wait GUI idle while programming pipes. Bad things might happen.
[  254.069528] radeon 0000:00:10.0: Saved 59 dwords of commands on ring 0.
[  254.069559] radeon 0000:00:10.0: (r300_asic_reset:426) RBBM_STATUS=0x84110140
[  254.567341] radeon 0000:00:10.0: (r300_asic_reset:445) RBBM_STATUS=0x80010140
[  255.061136] radeon 0000:00:10.0: (r300_asic_reset:457) RBBM_STATUS=0x00000140
[  255.061168] radeon 0000:00:10.0: GPU reset succeed
[  255.061174] radeon 0000:00:10.0: GPU reset succeeded, trying to resume
[  255.072909] debugfs: File 'r100_mc_info' in directory '0' already present!
[  255.072957] [drm] radeon: 1 quad pipes, 1 Z pipes initialized
[  255.072965] [drm] PCI GART of 512M enabled (table at 0x0000000002C00000).
[  255.072982] radeon 0000:00:10.0: WB enabled
[  255.072992] radeon 0000:00:10.0: fence driver on ring 0 use gpu addr 0x0000000078000000
[  255.073004] debugfs: File 'r100_cp_ring_info' in directory '0' already present!
[  255.073009] debugfs: File 'r100_cp_csq_fifo' in directory '0' already present!
[  255.073093] debugfs: File 'radeon_ring_gfx' in directory '0' already present!
[  255.073099] [drm] radeon: ring at 0x0000000078001000
[  255.209686] [drm:r100_ring_test [radeon]] *ERROR* radeon: ring test failed (scratch(0x15E8)=0xCAFEDEAD)
[  255.209942] [drm:r100_cp_init [radeon]] *ERROR* radeon: cp isn't working (-22).
[  255.210024] radeon 0000:00:10.0: failed initializing CP (-22).
[  265.267508] radeon 0000:00:10.0: ring 0 stalled for more than 10248msec
[  265.267542] radeon 0000:00:10.0: GPU lockup (current fence id 0x000000000000087e last fence id 0x0000000000000880 on ring 0)
[  265.274188] radeon 0000:00:10.0: Saved 192635 dwords of commands on ring 0.
[  265.278385] radeon 0000:00:10.0: GPU reset succeeded, trying to resume
[  265.278429] debugfs: File 'r100_mc_info' in directory '0' already present!
[  265.278457] [drm] radeon: 1 quad pipes, 1 Z pipes initialized
[  265.278465] [drm] PCI GART of 512M enabled (table at 0x0000000002C00000).
[  265.278477] radeon 0000:00:10.0: WB enabled
[  265.278486] radeon 0000:00:10.0: fence driver on ring 0 use gpu addr 0x0000000078000000
[  265.278495] debugfs: File 'r100_cp_ring_info' in directory '0' already present!
[  265.278501] debugfs: File 'r100_cp_csq_fifo' in directory '0' already present!
[  265.278584] debugfs: File 'radeon_ring_gfx' in directory '0' already present!
[  265.278590] [drm] radeon: ring at 0x0000000078001000
[  265.415280] [drm:r100_ring_test [radeon]] *ERROR* radeon: ring test failed (scratch(0x15E8)=0xCAFEDEAD)
[  265.415525] [drm:r100_cp_init [radeon]] *ERROR* radeon: cp isn't working (-22).
[  265.415608] radeon 0000:00:10.0: failed initializing CP (-22).
[  275.488778] radeon 0000:00:10.0: ring 0 stalled for more than 10232msec
[  275.488813] radeon 0000:00:10.0: GPU lockup (current fence id 0x000000000000087e last fence id 0x0000000000000880 on ring 0)
[  275.493557] radeon 0000:00:10.0: Saved 123067 dwords of commands on ring 0.
[  275.498395] radeon 0000:00:10.0: GPU reset succeeded, trying to resume


Reply to: