Re: [RFC PATCH 04/12] staging: android: ion: Call dma_map_sg for syncing and mapping

From: Dan Carpenter
Date: Fri Mar 03 2017 - 06:07:58 EST


On Thu, Mar 02, 2017 at 01:44:36PM -0800, Laura Abbott wrote:
> static struct sg_table *ion_map_dma_buf(struct dma_buf_attachment *attachment,
> enum dma_data_direction direction)
> {
> struct dma_buf *dmabuf = attachment->dmabuf;
> struct ion_buffer *buffer = dmabuf->priv;
> + struct sg_table *table;
> + int ret;
> +
> + /*
> + * TODO: Need to sync wrt CPU or device completely owning?
> + */
> +
> + table = dup_sg_table(buffer->sg_table);
>
> - ion_buffer_sync_for_device(buffer, attachment->dev, direction);
> - return dup_sg_table(buffer->sg_table);
> + if (!dma_map_sg(attachment->dev, table->sgl, table->nents,
> + direction)){
> + ret = -ENOMEM;
> + goto err;
> + }
> +
> +err:
> + free_duped_table(table);
> + return ERR_PTR(ret);

ret isn't initialized on success.

> }
>

regards,
dan carpenter