Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

spi: dw: fix memory leak on error path

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Mark Brown <broonie@linaro.org>

authored by

Baruch Siach and committed by
Mark Brown
43f627ac 020fe3fe

+3 -2
+3 -2
drivers/spi/spi-dw.c
··· 619 619 /* Only alloc on first setup */ 620 620 chip = spi_get_ctldata(spi); 621 621 if (!chip) { 622 - chip = kzalloc(sizeof(struct chip_data), GFP_KERNEL); 622 + chip = devm_kzalloc(&spi->dev, sizeof(struct chip_data), 623 + GFP_KERNEL); 623 624 if (!chip) 624 625 return -ENOMEM; 626 + spi_set_ctldata(spi, chip); 625 627 } 626 628 627 629 /* ··· 668 666 | (spi->mode << SPI_MODE_OFFSET) 669 667 | (chip->tmode << SPI_TMOD_OFFSET); 670 668 671 - spi_set_ctldata(spi, chip); 672 669 return 0; 673 670 } 674 671