media: vpss: fix a potential NULL pointer dereference
authorKangjie Lu <kjlu@umn.edu>
Sat, 23 Mar 2019 02:51:06 +0000 (22:51 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Thu, 23 May 2019 17:07:46 +0000 (13:07 -0400)
In case ioremap fails, the fix returns -ENOMEM to avoid NULL
pointer dereference.

Signed-off-by: Kangjie Lu <kjlu@umn.edu>
Acked-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Reviewed-by: Mukesh Ojha <mojha@codeaurora.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/platform/davinci/vpss.c

index 19cf6853411e223905e183585753ba2ded590e11..89a86c19579b8ab9d2cbee42a4cc25913dab9b96 100644 (file)
@@ -518,6 +518,11 @@ static int __init vpss_init(void)
                return -EBUSY;
 
        oper_cfg.vpss_regs_base2 = ioremap(VPSS_CLK_CTRL, 4);
+       if (unlikely(!oper_cfg.vpss_regs_base2)) {
+               release_mem_region(VPSS_CLK_CTRL, 4);
+               return -ENOMEM;
+       }
+
        writel(VPSS_CLK_CTRL_VENCCLKEN |
                     VPSS_CLK_CTRL_DACCLKEN, oper_cfg.vpss_regs_base2);