aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/mt29f_spinand
diff options
context:
space:
mode:
authorManuel Pégourié-Gonnard <mpg@elzevir.fr>2015-12-29 12:32:20 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-02-07 20:11:51 -0800
commite5b3ecebdf153509118ab1de6b3707a9889c300d (patch)
tree41e1a724212774e3f9eb2ee0fc0e655c91fcadbd /drivers/staging/mt29f_spinand
parentStaging: gdm72xx: Prefer using the BIT macro (diff)
downloadlinux-dev-e5b3ecebdf153509118ab1de6b3707a9889c300d.tar.xz
linux-dev-e5b3ecebdf153509118ab1de6b3707a9889c300d.zip
staging: mt29f: fix unchecked malloc()
The pointer is unconditionally dereferenced a few lines later, we need to make sure it isn't NULL. Signed-off-by: Manuel Pégourié-Gonnard <mpg@elzevir.fr> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/mt29f_spinand')
-rw-r--r--drivers/staging/mt29f_spinand/mt29f_spinand.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/staging/mt29f_spinand/mt29f_spinand.c b/drivers/staging/mt29f_spinand/mt29f_spinand.c
index 197d1124733d..983371b52ed4 100644
--- a/drivers/staging/mt29f_spinand/mt29f_spinand.c
+++ b/drivers/staging/mt29f_spinand/mt29f_spinand.c
@@ -483,8 +483,11 @@ static int spinand_program_page(struct spi_device *spi_nand,
#ifdef CONFIG_MTD_SPINAND_ONDIEECC
unsigned int i, j;
- enable_read_hw_ecc = 0;
wbuf = devm_kzalloc(&spi_nand->dev, CACHE_BUF, GFP_KERNEL);
+ if (!wbuf)
+ return -ENOMEM;
+
+ enable_read_hw_ecc = 0;
spinand_read_page(spi_nand, page_id, 0, CACHE_BUF, wbuf);
for (i = offset, j = 0; i < len; i++, j++)