Radeon SDMA Support Is Deemed Too Buggy That It's Dropped From Open-Source Driver
There have been many workarounds and changes to the SDMA (System DMA) copy support within the RadeonSI Gallium3D driver since the support was introduced years ago, but it's now been outright removed due to too many generations of AMD Radeon hardware having issues with it enabled.
The SDMA support with Radeon GPUs appears to be in bad enough shape that at least for the open-source "RadeonSI" Gallium3D driver it's better off disabling the support code than trying to deal with the workarounds. We have seen cases of disabling SDMA for GFX9/Vega due to APU issues, disabling SDMA on Polaris due to corruption bugs, and breaking problems on much older hardware too. But even with the new Radeon RX 6000 "RDNA 2" hardware, problems apparently still persist.
With this merge request that is now merged into Mesa 21.0, the SDMA support path is stripped out from the RadeonSI Gallium3D driver. There should be no performance penalties though expected from this change.
The commit removing the SDMA code mentions, "There are many issues with SDMA across many generations of hardware. A recent example is that gfx10.3 [RDNA 2] suffers from random GPU hangs if userspace uses SDMA."
The SDMA support with Radeon GPUs appears to be in bad enough shape that at least for the open-source "RadeonSI" Gallium3D driver it's better off disabling the support code than trying to deal with the workarounds. We have seen cases of disabling SDMA for GFX9/Vega due to APU issues, disabling SDMA on Polaris due to corruption bugs, and breaking problems on much older hardware too. But even with the new Radeon RX 6000 "RDNA 2" hardware, problems apparently still persist.
With this merge request that is now merged into Mesa 21.0, the SDMA support path is stripped out from the RadeonSI Gallium3D driver. There should be no performance penalties though expected from this change.
The commit removing the SDMA code mentions, "There are many issues with SDMA across many generations of hardware. A recent example is that gfx10.3 [RDNA 2] suffers from random GPU hangs if userspace uses SDMA."
19 Comments