]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
dmaengine: ti: edma: Add some null pointer checks to the edma_probe
authorKunwu Chan <chentao@kylinos.cn>
Thu, 18 Jan 2024 03:19:29 +0000 (11:19 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 1 Mar 2024 12:34:50 +0000 (13:34 +0100)
[ Upstream commit 6e2276203ac9ff10fc76917ec9813c660f627369 ]

devm_kasprintf() returns a pointer to dynamically allocated memory
which can be NULL upon failure. Ensure the allocation was successful
by checking the pointer validity.

Signed-off-by: Kunwu Chan <chentao@kylinos.cn>
Link: https://lore.kernel.org/r/20240118031929.192192-1-chentao@kylinos.cn
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/dma/ti/edma.c

index 33d6d931b33bbb5990f5370bee4a9ddb744dd707..155c409d2b434dba35e8960934cfa0f3669eab25 100644 (file)
@@ -2404,6 +2404,11 @@ static int edma_probe(struct platform_device *pdev)
        if (irq > 0) {
                irq_name = devm_kasprintf(dev, GFP_KERNEL, "%s_ccint",
                                          dev_name(dev));
+               if (!irq_name) {
+                       ret = -ENOMEM;
+                       goto err_disable_pm;
+               }
+
                ret = devm_request_irq(dev, irq, dma_irq_handler, 0, irq_name,
                                       ecc);
                if (ret) {
@@ -2420,6 +2425,11 @@ static int edma_probe(struct platform_device *pdev)
        if (irq > 0) {
                irq_name = devm_kasprintf(dev, GFP_KERNEL, "%s_ccerrint",
                                          dev_name(dev));
+               if (!irq_name) {
+                       ret = -ENOMEM;
+                       goto err_disable_pm;
+               }
+
                ret = devm_request_irq(dev, irq, dma_ccerr_handler, 0, irq_name,
                                       ecc);
                if (ret) {