| From 0f55f89d98c8b3e12b4f55f71c127a173e29557c Mon Sep 17 00:00:00 2001 |
| From: Ilia Sergachev <silia@ethz.ch> |
| Date: Mon, 15 Nov 2021 22:49:44 +0100 |
| Subject: serial: liteuart: Fix NULL pointer dereference in ->remove() |
| |
| From: Ilia Sergachev <silia@ethz.ch> |
| |
| commit 0f55f89d98c8b3e12b4f55f71c127a173e29557c upstream. |
| |
| drvdata has to be set in _probe() - otherwise platform_get_drvdata() |
| causes null pointer dereference BUG in _remove(). |
| |
| Fixes: 1da81e5562fa ("drivers/tty/serial: add LiteUART driver") |
| Cc: stable <stable@vger.kernel.org> |
| Reviewed-by: Johan Hovold <johan@kernel.org> |
| Signed-off-by: Ilia Sergachev <silia@ethz.ch> |
| Link: https://lore.kernel.org/r/20211115224944.23f8c12b@dtkw |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/tty/serial/liteuart.c | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| --- a/drivers/tty/serial/liteuart.c |
| +++ b/drivers/tty/serial/liteuart.c |
| @@ -285,6 +285,8 @@ static int liteuart_probe(struct platfor |
| port->line = dev_id; |
| spin_lock_init(&port->lock); |
| |
| + platform_set_drvdata(pdev, port); |
| + |
| return uart_add_one_port(&liteuart_driver, &uart->port); |
| } |
| |