diff options
author | Christian König <christian.koenig@amd.com> | 2014-02-18 08:50:22 (GMT) |
---|---|---|
committer | Christian König <christian.koenig@amd.com> | 2014-02-18 10:30:59 (GMT) |
commit | 1c61eae469e0d1d2fb9d7b77f51ca50c1f8f3ce9 (patch) | |
tree | 20c4df1c93f80514de8492d000b378a430469cb7 /drivers/gpu/drm/radeon/radeon_ring.c | |
parent | d02f8575f1a38b3180a76a8ae0857dfde67f5ead (diff) | |
download | linux-1c61eae469e0d1d2fb9d7b77f51ca50c1f8f3ce9.tar.xz |
drm/radeon: fix CP semaphores on CIK
The CP semaphore queue on CIK has a bug that triggers if uncompleted
waits use the same address while a signal is still pending. Work around
this by using different addresses for each sync.
Signed-off-by: Christian König <christian.koenig@amd.com>
Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/gpu/drm/radeon/radeon_ring.c')
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_ring.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_ring.c b/drivers/gpu/drm/radeon/radeon_ring.c index 1b783f0..15e44a7 100644 --- a/drivers/gpu/drm/radeon/radeon_ring.c +++ b/drivers/gpu/drm/radeon/radeon_ring.c @@ -139,7 +139,7 @@ int radeon_ib_schedule(struct radeon_device *rdev, struct radeon_ib *ib, } /* 64 dwords should be enough for fence too */ - r = radeon_ring_lock(rdev, ring, 64 + RADEON_NUM_RINGS * 8); + r = radeon_ring_lock(rdev, ring, 64 + RADEON_NUM_SYNCS * 8); if (r) { dev_err(rdev->dev, "scheduling IB failed (%d).\n", r); return r; |