On 14/10/15 08:54, M'boumba Cedric Madianga wrote:
+static int stm32_dma_alloc_chan_resources(struct dma_chan *c)
+{
+ struct stm32_dma_chan *chan = to_stm32_dma_chan(c);
+ struct stm32_dma_device *dmadev = stm32_dma_chan_get_dev(chan);
+ int ret;
+
+ chan->config_init = false;
+ ret = clk_prepare_enable(dmadev->clk);
+ if (ret < 0) {
+ dev_err(chan2dev(chan), "clk_prepare_enable failed: %d\n",
ret);
+ return ret;
+ }
+
+ ret = stm32_dma_disable_chan(chan);
+
+ return ret;
+}
The error path here looks like it will leak clock references.
Sorry I didn't catch it. What does it mean ?
If stm32_dma_disable_chan() returns an error then we will not restore
the original the clock counts causing them to "leak".
Daniel.
--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html