serial: 8250_aspeed_vuart: Fix potential NULL dereference in aspeed_vuart_probe
authorMiaoqian Lin <linmq006@gmail.com>
Mon, 4 Apr 2022 14:38:40 +0000 (14:38 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 15 Apr 2022 09:31:29 +0000 (11:31 +0200)
platform_get_resource() may fail and return NULL, so we should
better check it's return value to avoid a NULL pointer dereference.

Fixes: 54da3e381c2b ("serial: 8250_aspeed_vuart: use UPF_IOREMAP to set up register mapping")
Signed-off-by: Miaoqian Lin <linmq006@gmail.com>
Link: https://lore.kernel.org/r/20220404143842.16960-1-linmq006@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_aspeed_vuart.c

index 93fe10c680fbed1884d7ed804118d266f34af5bf..9d2a7856784f73d5f9e88d3bce2d99c5e6162224 100644 (file)
@@ -429,6 +429,8 @@ static int aspeed_vuart_probe(struct platform_device *pdev)
        timer_setup(&vuart->unthrottle_timer, aspeed_vuart_unthrottle_exp, 0);
 
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
+       if (!res)
+               return -EINVAL;
 
        memset(&port, 0, sizeof(port));
        port.port.private_data = vuart;