I'm seeing briefly flashing corruption in various OGL games, mostly Dying Light and Counter-Strike Global Offensive Danger Zone. But I once also saw it in X-Plane 11.
Happens with Mesa 18 and git and llvm 8 and git, but likely also even older versions in both cases.
I was able to capture it by recording a video and then extracting an affected frame:
Across the aforementioned games, the artifacts look akin or the same. Can also be brighter squares though.
Hardware issue is unlikely, as radv / amdvlk never show this issue (and Windows driver neither).
I fail to see a pattern when this corruption occurs, it seems like total chance to me while gaming.
This is with an RX 580 on Arch.
Looks like it might be the same as bug #110575.
Do either of these go away when you run steam with the following:
Or setting the launch options for the game in steam to:
The mesa-git build of mine was from after that commit, and a profile already applies it to Dying Light as well. :)
Skyrim in both wined3d and Gallium Nine is affected as well.
How could we start bisecting it? It seems something's broken in Gallium and I'd really like to have it fixed. :)
It looks a lot like it that AMD_DEBUG=nodma prevents the artifacts from occurring.
Yep, AMD_DEBUG=nodma works
I get similar symptoms with Assassins Creed: Unity run under DXVK (with RADV). The issue doesn't occur with LLVM8, and seems to be a regression in LLVM9 since it worked fine with the last compile of LLVM9 I used (early May).
The workarounds don't work in my case (nodma, zerovram) so it might be a separate issue.
Here's a screenshot of the glitch: https://imgur.com/aUgSjW1
See top left for most obvious example of it, although you can see blockiness across the image.
The OGL issue occurs with both LLVM 8 and 9-git, so there might not be a connection to your radv issue here. I suppose LLVM 9 would also be fine with AMD_DEBUG=nodma & radeonsi, which indicates that the bug really is in the async DMA code of radeonsi (or at least triggers it).
I also would suppose that RADV_PERFTEST= doesn't have to know the same values like AMD_DEBUG=, which afaik applies only to radeonsi.
Could we get an update on this?
Apparently AMD_DEBUG=nodma makes the corruption completely disappear, so it seems the issue really is caused by asynchronous DMA.
If the cause of the issue is not easy to find, perhaps disable async DMA by default? It doesn't seem to affect performance at all (at least not in wined3d and Gallium Nine) and it doesn't look like a good idea to me to have corruption in a vast number of games by default.
Situation unchanged with recent llvm-git and mesa-git.
Bug still present with
Is GFX8 not receiving any fixes anymore?
I plan to disable SDMA image copies by default in dGPUs.