瀏覽代碼

spi: fsl-spi: Fix memory leak

mpc8xxx_spi_probe() has set master->cleanup = mpc8xxx_spi_cleanup,
however current code overrides the setting in fsl_spi_probe() and set
master->cleanup = fsl_spi_cleanup.
Thus the memory allocated for cs is not freed anywhere.
Convert to use devm_kzalloc to fix the memory leak.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Axel Lin 11 年之前
父節點
當前提交
7a40054361
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      drivers/spi/spi-fsl-spi.c

+ 1 - 1
drivers/spi/spi-fsl-spi.c

@@ -431,7 +431,7 @@ static int fsl_spi_setup(struct spi_device *spi)
 		return -EINVAL;
 		return -EINVAL;
 
 
 	if (!cs) {
 	if (!cs) {
-		cs = kzalloc(sizeof *cs, GFP_KERNEL);
+		cs = devm_kzalloc(&spi->dev, sizeof(*cs), GFP_KERNEL);
 		if (!cs)
 		if (!cs)
 			return -ENOMEM;
 			return -ENOMEM;
 		spi->controller_state = cs;
 		spi->controller_state = cs;