aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/spi/spi-pl022.c
diff options
context:
space:
mode:
authorKiran Padwal <kiran.padwal@smartplayin.com>2014-09-18 03:27:47 -0400
committerMark Brown <broonie@kernel.org>2014-09-18 14:14:16 -0400
commit73e3f1eb51888303389f2dc2219c97ce34ca6db0 (patch)
treec80f70570e3c496d924bb47a391ec6b20b5e79c1 /drivers/spi/spi-pl022.c
parent7d1311b93e58ed55f3a31cc8f94c4b8fe988a2b9 (diff)
spi: pl022: Add missing error check for devm_kzalloc
Currently this driver is missing a check on the return value of devm_kzalloc, which would cause a NULL pointer dereference in a OOM situation. This patch adds a missing check. Signed-off-by: Kiran Padwal <kiran.padwal@smartplayin.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-pl022.c')
-rw-r--r--drivers/spi/spi-pl022.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c
index 1189cfd96477..7f13f3f7198b 100644
--- a/drivers/spi/spi-pl022.c
+++ b/drivers/spi/spi-pl022.c
@@ -2100,6 +2100,10 @@ static int pl022_probe(struct amba_device *adev, const struct amba_id *id)
2100 pl022->vendor = id->data; 2100 pl022->vendor = id->data;
2101 pl022->chipselects = devm_kzalloc(dev, num_cs * sizeof(int), 2101 pl022->chipselects = devm_kzalloc(dev, num_cs * sizeof(int),
2102 GFP_KERNEL); 2102 GFP_KERNEL);
2103 if (!pl022->chipselects) {
2104 status = -ENOMEM;
2105 goto err_no_mem;
2106 }
2103 2107
2104 /* 2108 /*
2105 * Bus Number Which has been Assigned to this SSP controller 2109 * Bus Number Which has been Assigned to this SSP controller
@@ -2241,6 +2245,7 @@ static int pl022_probe(struct amba_device *adev, const struct amba_id *id)
2241 amba_release_regions(adev); 2245 amba_release_regions(adev);
2242 err_no_ioregion: 2246 err_no_ioregion:
2243 err_no_gpio: 2247 err_no_gpio:
2248 err_no_mem:
2244 spi_master_put(master); 2249 spi_master_put(master);
2245 return status; 2250 return status;
2246} 2251}