summaryrefslogtreecommitdiff
path: root/drivers/tty/serial/mvebu-uart.c
diff options
context:
space:
mode:
authorAditya Pakki <pakki001@umn.edu>2019-03-19 02:50:56 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-03-19 17:37:43 +0300
commit32f47179833b63de72427131169809065db6745e (patch)
treea2a6f25a0593d18c9fd74466533e48d9f6dc5027 /drivers/tty/serial/mvebu-uart.c
parent9e98c678c2d6ae3a17cb2de55d17f69dddaa231b (diff)
downloadlinux-32f47179833b63de72427131169809065db6745e.tar.xz
serial: mvebu-uart: Fix to avoid a potential NULL pointer dereference
of_match_device on failure to find a matching device can return a NULL pointer. The patch checks for such a scenrio and passes the error upstream. Signed-off-by: Aditya Pakki <pakki001@umn.edu> Cc: stable <stable@vger.kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/serial/mvebu-uart.c')
-rw-r--r--drivers/tty/serial/mvebu-uart.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/tty/serial/mvebu-uart.c b/drivers/tty/serial/mvebu-uart.c
index 231f751d1ef4..7e7b1559fa36 100644
--- a/drivers/tty/serial/mvebu-uart.c
+++ b/drivers/tty/serial/mvebu-uart.c
@@ -810,6 +810,9 @@ static int mvebu_uart_probe(struct platform_device *pdev)
return -EINVAL;
}
+ if (!match)
+ return -ENODEV;
+
/* Assume that all UART ports have a DT alias or none has */
id = of_alias_get_id(pdev->dev.of_node, "serial");
if (!pdev->dev.of_node || id < 0)