diff options
| -rw-r--r-- | drivers/gpu/drm/radeon/radeon_sa.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_sa.c b/drivers/gpu/drm/radeon/radeon_sa.c index c507896aca45..197b157b73d0 100644 --- a/drivers/gpu/drm/radeon/radeon_sa.c +++ b/drivers/gpu/drm/radeon/radeon_sa.c | |||
| @@ -349,8 +349,13 @@ int radeon_sa_bo_new(struct radeon_device *rdev, | |||
| 349 | /* see if we can skip over some allocations */ | 349 | /* see if we can skip over some allocations */ |
| 350 | } while (radeon_sa_bo_next_hole(sa_manager, fences, tries)); | 350 | } while (radeon_sa_bo_next_hole(sa_manager, fences, tries)); |
| 351 | 351 | ||
| 352 | for (i = 0; i < RADEON_NUM_RINGS; ++i) | ||
| 353 | radeon_fence_ref(fences[i]); | ||
| 354 | |||
| 352 | spin_unlock(&sa_manager->wq.lock); | 355 | spin_unlock(&sa_manager->wq.lock); |
| 353 | r = radeon_fence_wait_any(rdev, fences, false); | 356 | r = radeon_fence_wait_any(rdev, fences, false); |
| 357 | for (i = 0; i < RADEON_NUM_RINGS; ++i) | ||
| 358 | radeon_fence_unref(&fences[i]); | ||
| 354 | spin_lock(&sa_manager->wq.lock); | 359 | spin_lock(&sa_manager->wq.lock); |
| 355 | /* if we have nothing to wait for block */ | 360 | /* if we have nothing to wait for block */ |
| 356 | if (r == -ENOENT) { | 361 | if (r == -ENOENT) { |
