diff options
Diffstat (limited to 'drivers/gpu/drm/drm_sman.c')
| -rw-r--r-- | drivers/gpu/drm/drm_sman.c | 29 | 
1 files changed, 14 insertions, 15 deletions
diff --git a/drivers/gpu/drm/drm_sman.c b/drivers/gpu/drm/drm_sman.c index 926f146390c..463aed9403d 100644 --- a/drivers/gpu/drm/drm_sman.c +++ b/drivers/gpu/drm/drm_sman.c @@ -48,9 +48,7 @@ void drm_sman_takedown(struct drm_sman * sman)  {  	drm_ht_remove(&sman->user_hash_tab);  	drm_ht_remove(&sman->owner_hash_tab); -	if (sman->mm) -		drm_free(sman->mm, sman->num_managers * sizeof(*sman->mm), -			 DRM_MEM_MM); +	kfree(sman->mm);  }  EXPORT_SYMBOL(drm_sman_takedown); @@ -61,8 +59,9 @@ drm_sman_init(struct drm_sman * sman, unsigned int num_managers,  {  	int ret = 0; -	sman->mm = (struct drm_sman_mm *) drm_calloc(num_managers, sizeof(*sman->mm), -						DRM_MEM_MM); +	sman->mm = (struct drm_sman_mm *) kcalloc(num_managers, +						  sizeof(*sman->mm), +						  GFP_KERNEL);  	if (!sman->mm) {  		ret = -ENOMEM;  		goto out; @@ -78,7 +77,7 @@ drm_sman_init(struct drm_sman * sman, unsigned int num_managers,  	drm_ht_remove(&sman->owner_hash_tab);  out1: -	drm_free(sman->mm, num_managers * sizeof(*sman->mm), DRM_MEM_MM); +	kfree(sman->mm);  out:  	return ret;  } @@ -110,7 +109,7 @@ static void drm_sman_mm_destroy(void *private)  {  	struct drm_mm *mm = (struct drm_mm *) private;  	drm_mm_takedown(mm); -	drm_free(mm, sizeof(*mm), DRM_MEM_MM); +	kfree(mm);  }  static unsigned long drm_sman_mm_offset(void *private, void *ref) @@ -130,7 +129,7 @@ drm_sman_set_range(struct drm_sman * sman, unsigned int manager,  	BUG_ON(manager >= sman->num_managers);  	sman_mm = &sman->mm[manager]; -	mm = drm_calloc(1, sizeof(*mm), DRM_MEM_MM); +	mm = kzalloc(sizeof(*mm), GFP_KERNEL);  	if (!mm) {  		return -ENOMEM;  	} @@ -138,7 +137,7 @@ drm_sman_set_range(struct drm_sman * sman, unsigned int manager,  	ret = drm_mm_init(mm, start, size);  	if (ret) { -		drm_free(mm, sizeof(*mm), DRM_MEM_MM); +		kfree(mm);  		return ret;  	} @@ -176,7 +175,7 @@ static struct drm_owner_item *drm_sman_get_owner_item(struct drm_sman * sman,  				      owner_hash);  	} -	owner_item = drm_calloc(1, sizeof(*owner_item), DRM_MEM_MM); +	owner_item = kzalloc(sizeof(*owner_item), GFP_KERNEL);  	if (!owner_item)  		goto out; @@ -189,7 +188,7 @@ static struct drm_owner_item *drm_sman_get_owner_item(struct drm_sman * sman,  	return owner_item;  out1: -	drm_free(owner_item, sizeof(*owner_item), DRM_MEM_MM); +	kfree(owner_item);  out:  	return NULL;  } @@ -212,7 +211,7 @@ struct drm_memblock_item *drm_sman_alloc(struct drm_sman *sman, unsigned int man  		return NULL;  	} -	memblock = drm_calloc(1, sizeof(*memblock), DRM_MEM_MM); +	memblock = kzalloc(sizeof(*memblock), GFP_KERNEL);  	if (!memblock)  		goto out; @@ -237,7 +236,7 @@ struct drm_memblock_item *drm_sman_alloc(struct drm_sman *sman, unsigned int man  out2:  	drm_ht_remove_item(&sman->user_hash_tab, &memblock->user_hash);  out1: -	drm_free(memblock, sizeof(*memblock), DRM_MEM_MM); +	kfree(memblock);  out:  	sman_mm->free(sman_mm->private, tmp); @@ -253,7 +252,7 @@ static void drm_sman_free(struct drm_memblock_item *item)  	list_del(&item->owner_list);  	drm_ht_remove_item(&sman->user_hash_tab, &item->user_hash);  	item->mm->free(item->mm->private, item->mm_info); -	drm_free(item, sizeof(*item), DRM_MEM_MM); +	kfree(item);  }  int drm_sman_free_key(struct drm_sman *sman, unsigned int key) @@ -277,7 +276,7 @@ static void drm_sman_remove_owner(struct drm_sman *sman,  {  	list_del(&owner_item->sman_list);  	drm_ht_remove_item(&sman->owner_hash_tab, &owner_item->owner_hash); -	drm_free(owner_item, sizeof(*owner_item), DRM_MEM_MM); +	kfree(owner_item);  }  int drm_sman_owner_clean(struct drm_sman *sman, unsigned long owner)  |