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 linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to