[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220107031733.3588290-1-jiasheng@iscas.ac.cn>
Date: Fri, 7 Jan 2022 11:17:33 +0800
From: Jiasheng Jiang <jiasheng@...as.ac.cn>
To: davem@...emloft.net
Cc: linux-ide@...r.kernel.org, linux-kernel@...r.kernel.org,
Jiasheng Jiang <jiasheng@...as.ac.cn>
Subject: [PATCH] ide: Check for null pointer after calling devm_ioremap
As the possible failure of the devres_alloc(), the devm_ioremap() and
devm_ioport_map() may return NULL pointer.
And then, the 'base' and 'alt_base' is used in plat_ide_setup_ports().
Therefore, it should be better to add the check in order to avoid the
dereference of the NULL pointer.
Fixes: 2bfba3c444fe ("ide: remove useless subdirs from drivers/ide/")
Signed-off-by: Jiasheng Jiang <jiasheng@...as.ac.cn>
---
drivers/ide/ide_platform.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/ide/ide_platform.c b/drivers/ide/ide_platform.c
index 91639fd6c276..8c6e1af7b6eb 100644
--- a/drivers/ide/ide_platform.c
+++ b/drivers/ide/ide_platform.c
@@ -85,6 +85,10 @@ static int plat_ide_probe(struct platform_device *pdev)
alt_base = devm_ioport_map(&pdev->dev,
res_alt->start, resource_size(res_alt));
}
+ if (!base || !alt_base) {
+ ret = -ENOMEM;
+ goto out;
+ }
memset(&hw, 0, sizeof(hw));
plat_ide_setup_ports(&hw, base, alt_base, pdata, res_irq->start);
--
2.25.1
Powered by blists - more mailing lists