From: Grigori Goronzy Date: Thu, 2 Jul 2015 23:54:11 +0000 (+0200) Subject: drm/radeon: fix HDP flushing X-Git-Tag: v4.1.4~118 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=56308551a9569ea10791092a99c9f6b5b2d4ddf8;p=users%2Fjedix%2Flinux-maple.git drm/radeon: fix HDP flushing commit 54e03986133468e02cb01b76215e4d53a9cf6380 upstream. This was regressed by commit 39e7f6f8, although I don't know of any actual issues caused by it. The storage domain is read without TTM locking now, but the lock never helped to prevent any races. Reviewed-by: Christian König Signed-off-by: Grigori Goronzy Signed-off-by: Alex Deucher Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/gpu/drm/radeon/radeon_gem.c b/drivers/gpu/drm/radeon/radeon_gem.c index ac3c1310b953..e370cb4fd467 100644 --- a/drivers/gpu/drm/radeon/radeon_gem.c +++ b/drivers/gpu/drm/radeon/radeon_gem.c @@ -471,6 +471,7 @@ int radeon_gem_wait_idle_ioctl(struct drm_device *dev, void *data, r = ret; /* Flush HDP cache via MMIO if necessary */ + cur_placement = ACCESS_ONCE(robj->tbo.mem.mem_type); if (rdev->asic->mmio_hdp_flush && radeon_mem_type_to_domain(cur_placement) == RADEON_GEM_DOMAIN_VRAM) robj->rdev->asic->mmio_hdp_flush(rdev);