From: Christian K?nig <christian.koe...@amd.com>

This reverts commit f77c4f0223a1f0e259007c7431f64df5c29a0bf7.

Just had the afflatus why that doesn't work like it should and we
need to revert it, cause it can happen on every hardware generation.

Signed-off-by: Christian K?nig <christian.koenig at amd.com>
---
 drivers/gpu/drm/radeon/radeon_vm.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_vm.c 
b/drivers/gpu/drm/radeon/radeon_vm.c
index 058f200..8d15ce6 100644
--- a/drivers/gpu/drm/radeon/radeon_vm.c
+++ b/drivers/gpu/drm/radeon/radeon_vm.c
@@ -238,9 +238,9 @@ void radeon_vm_flush(struct radeon_device *rdev,
        uint64_t pd_addr = radeon_bo_gpu_offset(vm->page_directory);

        /* if we can't remember our last VM flush then flush now! */
-       /* XXX figure out why we have to flush all the time before CIK */
-       if (rdev->family < CHIP_BONAIRE ||
-           !vm->last_flush || pd_addr != vm->pd_gpu_addr) {
+       /* flushing only when needed doesn't work because of a hardware race
+          condition between the DMA and the GFX engines */
+       if (!vm->last_flush || true || pd_addr != vm->pd_gpu_addr) {
                trace_radeon_vm_flush(pd_addr, ring, vm->id);
                vm->pd_gpu_addr = pd_addr;
                radeon_ring_vm_flush(rdev, ring, vm);
-- 
1.9.1

Reply via email to