On Thu, Jan 19, 2017 at 10:00 AM, Arvind Yadav
<[email protected]> wrote:
> Here, If ioremap_nocache will fail. It will return NULL.
> Kernel can run into a NULL-pointer dereference.
> This error check will avoid NULL pointer dereference.

>         uart.port.mapbase       = address;
>         uart.port.membase       = ioremap_nocache(address, 16);
> +       if (!uart.port.membase) {
> +               dev_warn(&dev->dev, "Failed to map memory\n");
> +               return -ENOMEM;
> +       }

You also may do something like

void __iomem *base;
...

base = ioremap_nocache(...);
if (!base)
 return -ENOMEM;
// I doubt the message is useful, up to you

memset(&uart, 0, sizeof(uart));
...
uart.port.membase       = base;

-- 
With Best Regards,
Andy Shevchenko

Reply via email to