[PATCH] CMA: correct unlock target

Michal Nazarewicz mina86 at mina86.com
Thu May 29 16:48:49 PDT 2014


On Thu, May 29 2014, Joonsoo Kim <iamjoonsoo.kim at lge.com> wrote:
> 'cma: Remove potential deadlock situation' introduces per cma area mutex
> for bitmap management. It is good, but there is one mistake. When we
> can't find appropriate area in bitmap, we release cma_mutex global lock
> rather than cma->lock and this is a bug. So fix it.
>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim at lge.com>

Acked-by: Michal Nazarewicz <mina86 at mina86.com>

> diff --git a/drivers/base/dma-contiguous.c b/drivers/base/dma-contiguous.c
> index 6f6bffc..83969f8 100644
> --- a/drivers/base/dma-contiguous.c
> +++ b/drivers/base/dma-contiguous.c
> @@ -331,7 +331,7 @@ struct page *dma_alloc_from_contiguous(struct device *dev, int count,
>  		pageno = bitmap_find_next_zero_area(cma->bitmap, cma->count,
>  						    start, count, mask);
>  		if (pageno >= cma->count) {
> -			mutex_unlock(&cma_mutex);
> +			mutex_unlock(&cma->lock);
>  			break;
>  		}
>  		bitmap_set(cma->bitmap, pageno, count);
> -- 
> 1.7.9.5

-- 
Best regards,                                         _     _
.o. | Liege of Serenely Enlightened Majesty of      o' \,=./ `o
..o | Computer Science,  Michał “mina86” Nazarewicz    (o o)
ooo +--<mpn at google.com>--<xmpp:mina86 at jabber.org>--ooO--(_)--Ooo--



More information about the linux-arm-kernel mailing list