From: Sylwester Nawrocki Date: Thu, 8 May 2014 17:35:15 +0000 (-0300) Subject: media: exynos4-is: Free FIMC-IS CPU memory only when allocated X-Git-Tag: v3.15.3~76 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=30520611a4f41bf1276959ad77f1faabed5c09de;p=thirdparty%2Fkernel%2Fstable.git media: exynos4-is: Free FIMC-IS CPU memory only when allocated commit 404a90abc60f60df2757cb272660e003d326881f upstream. Ensure dma_free_coherent() is not called with incorrect arguments and only when the memory was actually allocated. This will prevent possible crashes on error paths of the top level media device driver, when fimc-is device gets unregistered and its driver detached. Signed-off-by: Sylwester Nawrocki Acked-by: Kyungmin Park Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/media/platform/exynos4-is/fimc-is.c b/drivers/media/platform/exynos4-is/fimc-is.c index 128b73b6cce26..5476dce3ad293 100644 --- a/drivers/media/platform/exynos4-is/fimc-is.c +++ b/drivers/media/platform/exynos4-is/fimc-is.c @@ -367,6 +367,9 @@ static void fimc_is_free_cpu_memory(struct fimc_is *is) { struct device *dev = &is->pdev->dev; + if (is->memory.vaddr == NULL) + return; + dma_free_coherent(dev, is->memory.size, is->memory.vaddr, is->memory.paddr); }