Re: [RFC][PATCH 1/6] staging: android: ion: return error value for ion_device_add_heap

From: Liviu Dudau
Date: Wed Jun 08 2016 - 09:02:14 EST


On Mon, Jun 06, 2016 at 11:23:28AM -0700, Laura Abbott wrote:
> From: Laura Abbott <labbott@xxxxxxxxxxxxxxxxx>
>
>
> ion_device_add_heap doesn't return an error value. Change it to return
> information to callers.
>
> Signed-off-by: Laura Abbott <labbott@xxxxxxxxxx>

Reviewed-by: Liviu Dudau <Liviu.Dudau@xxxxxxx>


> ---
> drivers/staging/android/ion/ion.c | 7 +++++--
> drivers/staging/android/ion/ion_priv.h | 2 +-
> 2 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/staging/android/ion/ion.c b/drivers/staging/android/ion/ion.c
> index a2cf93b..306340a 100644
> --- a/drivers/staging/android/ion/ion.c
> +++ b/drivers/staging/android/ion/ion.c
> @@ -1584,14 +1584,16 @@ static int debug_shrink_get(void *data, u64 *val)
> DEFINE_SIMPLE_ATTRIBUTE(debug_shrink_fops, debug_shrink_get,
> debug_shrink_set, "%llu\n");
>
> -void ion_device_add_heap(struct ion_device *dev, struct ion_heap *heap)
> +int ion_device_add_heap(struct ion_device *dev, struct ion_heap *heap)
> {
> struct dentry *debug_file;
>
> if (!heap->ops->allocate || !heap->ops->free || !heap->ops->map_dma ||
> - !heap->ops->unmap_dma)
> + !heap->ops->unmap_dma) {
> pr_err("%s: can not add heap with invalid ops struct.\n",
> __func__);
> + return -EINVAL;
> + }
>
> spin_lock_init(&heap->free_lock);
> heap->free_list_size = 0;
> @@ -1639,6 +1641,7 @@ void ion_device_add_heap(struct ion_device *dev, struct ion_heap *heap)
> }
>
> up_write(&dev->lock);
> + return 0;
> }
> EXPORT_SYMBOL(ion_device_add_heap);
>
> diff --git a/drivers/staging/android/ion/ion_priv.h b/drivers/staging/android/ion/ion_priv.h
> index 0239883..35726ae 100644
> --- a/drivers/staging/android/ion/ion_priv.h
> +++ b/drivers/staging/android/ion/ion_priv.h
> @@ -221,7 +221,7 @@ void ion_device_destroy(struct ion_device *dev);
> * @dev: the device
> * @heap: the heap to add
> */
> -void ion_device_add_heap(struct ion_device *dev, struct ion_heap *heap);
> +int ion_device_add_heap(struct ion_device *dev, struct ion_heap *heap);
>
> /**
> * some helpers for common operations on buffers using the sg_table
> --
> 2.5.5
>

--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
Â\_(ã)_/Â