DMA: PL330: Check the pointer returned by kzalloc
authorSachin Kamat <sachin.kamat@linaro.org>
Mon, 17 Sep 2012 09:50:23 +0000 (15:20 +0530)
committerVinod Koul <vinod.koul@linux.intel.com>
Tue, 18 Sep 2012 03:34:52 +0000 (09:04 +0530)
kzalloc could return NULL. Hence add a check to avoid
NULL pointer dereference.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Jassi Brar <jassisinghbrar@gmail.com>
Cc: Stable <stable@vger.kernel.org>
Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
drivers/dma/pl330.c

index a3b26ada812206922b074fe11cc254850f0b1d42..f5843bc80baa9b8168f6034ad167ce46a0d537bb 100644 (file)
@@ -2930,6 +2930,11 @@ pl330_probe(struct amba_device *adev, const struct amba_id *id)
                num_chan = max_t(int, pi->pcfg.num_peri, pi->pcfg.num_chan);
 
        pdmac->peripherals = kzalloc(num_chan * sizeof(*pch), GFP_KERNEL);
+       if (!pdmac->peripherals) {
+               ret = -ENOMEM;
+               dev_err(&adev->dev, "unable to allocate pdmac->peripherals\n");
+               goto probe_err5;
+       }
 
        for (i = 0; i < num_chan; i++) {
                pch = &pdmac->peripherals[i];