]> git.baikalelectronics.ru Git - kernel.git/commit
dmaengine: dw: fix potential memory leak in dw_dma_parse_dt()
authorMans Rullgard <mans@mansr.com>
Thu, 17 Dec 2015 23:30:57 +0000 (23:30 +0000)
committerVinod Koul <vinod.koul@intel.com>
Fri, 18 Dec 2015 05:29:32 +0000 (10:59 +0530)
commit22140e4186eaea312aabbfb482b51898f223b101
tree5a4790db10d60ecc2befac8daea55252c4ba334d
parent1230b837a8ada4ef6ed9eb33274e281229e6afd9
dmaengine: dw: fix potential memory leak in dw_dma_parse_dt()

If the "dma-channels" DT property is missing, the dw_dma_parse_dt()
function return NULL, but not before allocating memory for a struct
dw_dma_platform_data through devres.  If the device supports parameter
detection, the probe still succeeds and the allocated memory is not
released until the device is removed.

Fix this by deferring the allocation until after checking the
"dma-channels" property.

Signed-off-by: Mans Rullgard <mans@mansr.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/dw/platform.c