]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ata: sata_mv:- Handle return value of devm_ioremap.
authorArvind Yadav <arvind.yadav.cs@gmail.com>
Mon, 12 Dec 2016 17:43:27 +0000 (23:13 +0530)
committerWilly Tarreau <w@1wt.eu>
Tue, 20 Jun 2017 12:04:18 +0000 (14:04 +0200)
commit 064c3db9c564cc5be514ac21fb4aa26cc33db746 upstream.

Here, If devm_ioremap will fail. It will return NULL.
Then hpriv->base = NULL - 0x20000; Kernel can run into
a NULL-pointer dereference. This error check will avoid
NULL pointer dereference.

Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Signed-off-by: Willy Tarreau <w@1wt.eu>
drivers/ata/sata_mv.c

index b256ff5b65794dab8decc4ab85ee64e9d0ccbf1e..d9f45c821ac4c531ed2267f3dc04ee787199fd30 100644 (file)
@@ -4097,6 +4097,9 @@ static int mv_platform_probe(struct platform_device *pdev)
        host->iomap = NULL;
        hpriv->base = devm_ioremap(&pdev->dev, res->start,
                                   resource_size(res));
+       if (!hpriv->base)
+               return -ENOMEM;
+
        hpriv->base -= SATAHC0_REG_BASE;
 
 #if defined(CONFIG_HAVE_CLK)