Commit c32f9e0e authored by Kunwu Chan's avatar Kunwu Chan Committed by GUO Zihua
Browse files

dmaengine: ti: edma: Add some null pointer checks to the edma_probe

stable inclusion
from stable-v5.10.211
commit c432094aa7c9970f2fa10d2305d550d3810657ce
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/I9E2MP
CVE: CVE-2024-26771

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=c432094aa7c9970f2fa10d2305d550d3810657ce



--------------------------------

[ 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: default avatarKunwu Chan <chentao@kylinos.cn>
Link: https://lore.kernel.org/r/20240118031929.192192-1-chentao@kylinos.cn


Signed-off-by: default avatarVinod Koul <vkoul@kernel.org>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
Signed-off-by: default avatarGUO Zihua <guozihua@huawei.com>
parent 0b6927f0
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -2462,6 +2462,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) {
@@ -2478,6 +2483,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) {