diff options
author | Christian König <christian.koenig@amd.com> | 2014-02-20 15:48:00 -0500 |
---|---|---|
committer | Christian König <christian.koenig@amd.com> | 2014-03-03 05:26:39 -0500 |
commit | 4d1526466296360f56f93c195848c1202b0cc10b (patch) | |
tree | 8a029767671c5a64effa9643bc62c0ef9d1e3529 | |
parent | 529364e05bc093dc41b0c9e67e94ac82442c1b35 (diff) |
drm/radeon: drop non blocking allocations from sub allocator
Not needed any more.
Signed-off-by: Christian König <christian.koenig@amd.com>
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_object.h | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_ring.c | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_sa.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_semaphore.c | 2 |
4 files changed, 5 insertions, 8 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_object.h b/drivers/gpu/drm/radeon/radeon_object.h index 7dff64d1f592..9e7b25a0629d 100644 --- a/drivers/gpu/drm/radeon/radeon_object.h +++ b/drivers/gpu/drm/radeon/radeon_object.h | |||
@@ -180,7 +180,7 @@ extern int radeon_sa_bo_manager_suspend(struct radeon_device *rdev, | |||
180 | extern int radeon_sa_bo_new(struct radeon_device *rdev, | 180 | extern int radeon_sa_bo_new(struct radeon_device *rdev, |
181 | struct radeon_sa_manager *sa_manager, | 181 | struct radeon_sa_manager *sa_manager, |
182 | struct radeon_sa_bo **sa_bo, | 182 | struct radeon_sa_bo **sa_bo, |
183 | unsigned size, unsigned align, bool block); | 183 | unsigned size, unsigned align); |
184 | extern void radeon_sa_bo_free(struct radeon_device *rdev, | 184 | extern void radeon_sa_bo_free(struct radeon_device *rdev, |
185 | struct radeon_sa_bo **sa_bo, | 185 | struct radeon_sa_bo **sa_bo, |
186 | struct radeon_fence *fence); | 186 | struct radeon_fence *fence); |
diff --git a/drivers/gpu/drm/radeon/radeon_ring.c b/drivers/gpu/drm/radeon/radeon_ring.c index 5321e249021f..8b0dfdd23793 100644 --- a/drivers/gpu/drm/radeon/radeon_ring.c +++ b/drivers/gpu/drm/radeon/radeon_ring.c | |||
@@ -63,7 +63,7 @@ int radeon_ib_get(struct radeon_device *rdev, int ring, | |||
63 | { | 63 | { |
64 | int r; | 64 | int r; |
65 | 65 | ||
66 | r = radeon_sa_bo_new(rdev, &rdev->ring_tmp_bo, &ib->sa_bo, size, 256, true); | 66 | r = radeon_sa_bo_new(rdev, &rdev->ring_tmp_bo, &ib->sa_bo, size, 256); |
67 | if (r) { | 67 | if (r) { |
68 | dev_err(rdev->dev, "failed to get a new IB (%d)\n", r); | 68 | dev_err(rdev->dev, "failed to get a new IB (%d)\n", r); |
69 | return r; | 69 | return r; |
diff --git a/drivers/gpu/drm/radeon/radeon_sa.c b/drivers/gpu/drm/radeon/radeon_sa.c index c0625805cdd7..adcf3e2f07da 100644 --- a/drivers/gpu/drm/radeon/radeon_sa.c +++ b/drivers/gpu/drm/radeon/radeon_sa.c | |||
@@ -312,7 +312,7 @@ static bool radeon_sa_bo_next_hole(struct radeon_sa_manager *sa_manager, | |||
312 | int radeon_sa_bo_new(struct radeon_device *rdev, | 312 | int radeon_sa_bo_new(struct radeon_device *rdev, |
313 | struct radeon_sa_manager *sa_manager, | 313 | struct radeon_sa_manager *sa_manager, |
314 | struct radeon_sa_bo **sa_bo, | 314 | struct radeon_sa_bo **sa_bo, |
315 | unsigned size, unsigned align, bool block) | 315 | unsigned size, unsigned align) |
316 | { | 316 | { |
317 | struct radeon_fence *fences[RADEON_NUM_RINGS]; | 317 | struct radeon_fence *fences[RADEON_NUM_RINGS]; |
318 | unsigned tries[RADEON_NUM_RINGS]; | 318 | unsigned tries[RADEON_NUM_RINGS]; |
@@ -353,14 +353,11 @@ int radeon_sa_bo_new(struct radeon_device *rdev, | |||
353 | r = radeon_fence_wait_any(rdev, fences, false); | 353 | r = radeon_fence_wait_any(rdev, fences, false); |
354 | spin_lock(&sa_manager->wq.lock); | 354 | spin_lock(&sa_manager->wq.lock); |
355 | /* if we have nothing to wait for block */ | 355 | /* if we have nothing to wait for block */ |
356 | if (r == -ENOENT && block) { | 356 | if (r == -ENOENT) { |
357 | r = wait_event_interruptible_locked( | 357 | r = wait_event_interruptible_locked( |
358 | sa_manager->wq, | 358 | sa_manager->wq, |
359 | radeon_sa_event(sa_manager, size, align) | 359 | radeon_sa_event(sa_manager, size, align) |
360 | ); | 360 | ); |
361 | |||
362 | } else if (r == -ENOENT) { | ||
363 | r = -ENOMEM; | ||
364 | } | 361 | } |
365 | 362 | ||
366 | } while (!r); | 363 | } while (!r); |
diff --git a/drivers/gpu/drm/radeon/radeon_semaphore.c b/drivers/gpu/drm/radeon/radeon_semaphore.c index 6140af6772c7..dbd6bcde92de 100644 --- a/drivers/gpu/drm/radeon/radeon_semaphore.c +++ b/drivers/gpu/drm/radeon/radeon_semaphore.c | |||
@@ -42,7 +42,7 @@ int radeon_semaphore_create(struct radeon_device *rdev, | |||
42 | return -ENOMEM; | 42 | return -ENOMEM; |
43 | } | 43 | } |
44 | r = radeon_sa_bo_new(rdev, &rdev->ring_tmp_bo, &(*semaphore)->sa_bo, | 44 | r = radeon_sa_bo_new(rdev, &rdev->ring_tmp_bo, &(*semaphore)->sa_bo, |
45 | 8 * RADEON_NUM_SYNCS, 8, true); | 45 | 8 * RADEON_NUM_SYNCS, 8); |
46 | if (r) { | 46 | if (r) { |
47 | kfree(*semaphore); | 47 | kfree(*semaphore); |
48 | *semaphore = NULL; | 48 | *semaphore = NULL; |