aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Herrmann <dh.herrmann@gmail.com>2013-07-01 14:32:58 -0400
committerDave Airlie <airlied@redhat.com>2013-07-01 23:34:41 -0400
commit77ef8bbc87be7ad10b410247efc6d0f10676b401 (patch)
tree9cf69a4bbf55b95eeb25a1c4b8a700db138486c7
parent6ef92fbea2b5680204da5b8796e8972109d01bd3 (diff)
drm: make drm_mm_init() return void
There is no reason to return "int" as this function never fails. Furthermore, several drivers (ast, sis) already depend on this. Signed-off-by: David Herrmann <dh.herrmann@gmail.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--drivers/gpu/drm/drm_gem.c8
-rw-r--r--drivers/gpu/drm/drm_mm.c4
-rw-r--r--drivers/gpu/drm/ttm/ttm_bo.c6
-rw-r--r--drivers/gpu/drm/ttm/ttm_bo_manager.c8
-rw-r--r--include/drm/drm_mm.h6
5 files changed, 8 insertions, 24 deletions
diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
index bcedaf7b73b9..603f256152ef 100644
--- a/drivers/gpu/drm/drm_gem.c
+++ b/drivers/gpu/drm/drm_gem.c
@@ -108,12 +108,8 @@ drm_gem_init(struct drm_device *dev)
108 return -ENOMEM; 108 return -ENOMEM;
109 } 109 }
110 110
111 if (drm_mm_init(&mm->offset_manager, DRM_FILE_PAGE_OFFSET_START, 111 drm_mm_init(&mm->offset_manager, DRM_FILE_PAGE_OFFSET_START,
112 DRM_FILE_PAGE_OFFSET_SIZE)) { 112 DRM_FILE_PAGE_OFFSET_SIZE);
113 drm_ht_remove(&mm->offset_hash);
114 kfree(mm);
115 return -ENOMEM;
116 }
117 113
118 return 0; 114 return 0;
119} 115}
diff --git a/drivers/gpu/drm/drm_mm.c b/drivers/gpu/drm/drm_mm.c
index 07cf99cc8862..7917729ee61d 100644
--- a/drivers/gpu/drm/drm_mm.c
+++ b/drivers/gpu/drm/drm_mm.c
@@ -669,7 +669,7 @@ int drm_mm_clean(struct drm_mm * mm)
669} 669}
670EXPORT_SYMBOL(drm_mm_clean); 670EXPORT_SYMBOL(drm_mm_clean);
671 671
672int drm_mm_init(struct drm_mm * mm, unsigned long start, unsigned long size) 672void drm_mm_init(struct drm_mm * mm, unsigned long start, unsigned long size)
673{ 673{
674 INIT_LIST_HEAD(&mm->hole_stack); 674 INIT_LIST_HEAD(&mm->hole_stack);
675 INIT_LIST_HEAD(&mm->unused_nodes); 675 INIT_LIST_HEAD(&mm->unused_nodes);
@@ -690,8 +690,6 @@ int drm_mm_init(struct drm_mm * mm, unsigned long start, unsigned long size)
690 list_add_tail(&mm->head_node.hole_stack, &mm->hole_stack); 690 list_add_tail(&mm->head_node.hole_stack, &mm->hole_stack);
691 691
692 mm->color_adjust = NULL; 692 mm->color_adjust = NULL;
693
694 return 0;
695} 693}
696EXPORT_SYMBOL(drm_mm_init); 694EXPORT_SYMBOL(drm_mm_init);
697 695
diff --git a/drivers/gpu/drm/ttm/ttm_bo.c b/drivers/gpu/drm/ttm/ttm_bo.c
index 6e6975c8596f..cb9dd674670c 100644
--- a/drivers/gpu/drm/ttm/ttm_bo.c
+++ b/drivers/gpu/drm/ttm/ttm_bo.c
@@ -1455,9 +1455,7 @@ int ttm_bo_device_init(struct ttm_bo_device *bdev,
1455 goto out_no_sys; 1455 goto out_no_sys;
1456 1456
1457 bdev->addr_space_rb = RB_ROOT; 1457 bdev->addr_space_rb = RB_ROOT;
1458 ret = drm_mm_init(&bdev->addr_space_mm, file_page_offset, 0x10000000); 1458 drm_mm_init(&bdev->addr_space_mm, file_page_offset, 0x10000000);
1459 if (unlikely(ret != 0))
1460 goto out_no_addr_mm;
1461 1459
1462 INIT_DELAYED_WORK(&bdev->wq, ttm_bo_delayed_workqueue); 1460 INIT_DELAYED_WORK(&bdev->wq, ttm_bo_delayed_workqueue);
1463 INIT_LIST_HEAD(&bdev->ddestroy); 1461 INIT_LIST_HEAD(&bdev->ddestroy);
@@ -1471,8 +1469,6 @@ int ttm_bo_device_init(struct ttm_bo_device *bdev,
1471 mutex_unlock(&glob->device_list_mutex); 1469 mutex_unlock(&glob->device_list_mutex);
1472 1470
1473 return 0; 1471 return 0;
1474out_no_addr_mm:
1475 ttm_bo_clean_mm(bdev, 0);
1476out_no_sys: 1472out_no_sys:
1477 return ret; 1473 return ret;
1478} 1474}
diff --git a/drivers/gpu/drm/ttm/ttm_bo_manager.c b/drivers/gpu/drm/ttm/ttm_bo_manager.c
index 9212494e9072..e4367f91472a 100644
--- a/drivers/gpu/drm/ttm/ttm_bo_manager.c
+++ b/drivers/gpu/drm/ttm/ttm_bo_manager.c
@@ -103,18 +103,12 @@ static int ttm_bo_man_init(struct ttm_mem_type_manager *man,
103 unsigned long p_size) 103 unsigned long p_size)
104{ 104{
105 struct ttm_range_manager *rman; 105 struct ttm_range_manager *rman;
106 int ret;
107 106
108 rman = kzalloc(sizeof(*rman), GFP_KERNEL); 107 rman = kzalloc(sizeof(*rman), GFP_KERNEL);
109 if (!rman) 108 if (!rman)
110 return -ENOMEM; 109 return -ENOMEM;
111 110
112 ret = drm_mm_init(&rman->mm, 0, p_size); 111 drm_mm_init(&rman->mm, 0, p_size);
113 if (ret) {
114 kfree(rman);
115 return ret;
116 }
117
118 spin_lock_init(&rman->lock); 112 spin_lock_init(&rman->lock);
119 man->priv = rman; 113 man->priv = rman;
120 return 0; 114 return 0;
diff --git a/include/drm/drm_mm.h b/include/drm/drm_mm.h
index 88591ef8fa24..de9242542f05 100644
--- a/include/drm/drm_mm.h
+++ b/include/drm/drm_mm.h
@@ -275,9 +275,9 @@ static inline struct drm_mm_node *drm_mm_search_free_in_range_color(
275 return drm_mm_search_free_in_range_generic(mm, size, alignment, color, 275 return drm_mm_search_free_in_range_generic(mm, size, alignment, color,
276 start, end, best_match); 276 start, end, best_match);
277} 277}
278extern int drm_mm_init(struct drm_mm *mm, 278extern void drm_mm_init(struct drm_mm *mm,
279 unsigned long start, 279 unsigned long start,
280 unsigned long size); 280 unsigned long size);
281extern void drm_mm_takedown(struct drm_mm *mm); 281extern void drm_mm_takedown(struct drm_mm *mm);
282extern int drm_mm_clean(struct drm_mm *mm); 282extern int drm_mm_clean(struct drm_mm *mm);
283extern int drm_mm_pre_get(struct drm_mm *mm); 283extern int drm_mm_pre_get(struct drm_mm *mm);