media: omap3isp: fix unbalanced dma_iommu_mapping
authorSuman Anna <s-anna@ti.com>
Wed, 14 Mar 2018 15:41:36 +0000 (11:41 -0400)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 20 Apr 2018 12:36:05 +0000 (08:36 -0400)
commitb7e1e6859fbf60519fd82d7120cee106a6019512
tree2675389e15e9de7cf05b47ea741f125809103f37
parent1d338b86e17d87215cf57b1ad1d13b2afe582d33
media: omap3isp: fix unbalanced dma_iommu_mapping

The OMAP3 ISP driver manages its MMU mappings through the IOMMU-aware
ARM DMA backend. The current code creates a dma_iommu_mapping and
attaches this to the ISP device, but never detaches the mapping in
either the probe failure paths or the driver remove path resulting
in an unbalanced mapping refcount and a memory leak. Fix this properly.

Reported-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Suman Anna <s-anna@ti.com>
Tested-by: Pavel Machek <pavel@ucw.cz>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/platform/omap3isp/isp.c