diff options
author | Markus Schneider-Pargmann <msp@baylibre.com> | 2024-08-07 16:12:25 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2024-10-04 16:33:18 +0200 |
commit | 4a5ad155405109008d3598d0c5434430d2feabef (patch) | |
tree | 154b8226e258ccf844600734c85e02a5a2964ab5 /drivers/tty/serial/8250 | |
parent | 4b5d48b7a29cc6d508121a4b4e0c97a891e5273c (diff) | |
download | linux-stable-4a5ad155405109008d3598d0c5434430d2feabef.tar.gz linux-stable-4a5ad155405109008d3598d0c5434430d2feabef.tar.bz2 linux-stable-4a5ad155405109008d3598d0c5434430d2feabef.zip |
serial: 8250: omap: Cleanup on error in request_irq
[ Upstream commit 35e648a16018b747897be2ccc3ce95ff23237bb5 ]
If devm_request_irq fails, the code does not cleanup many things that
were setup before. Instead of directly returning ret we should jump to
err.
Fixes: fef4f600319e ("serial: 8250: omap: Fix life cycle issues for interrupt handlers")
Signed-off-by: Markus Schneider-Pargmann <msp@baylibre.com>
Reviewed-by: Kevin Hilman <khilman@baylibre.com>
Tested-by: Kevin Hilman <khilman@baylibre.com>
Link: https://lore.kernel.org/r/20240807141227.1093006-4-msp@baylibre.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/tty/serial/8250')
-rw-r--r-- | drivers/tty/serial/8250/8250_omap.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/tty/serial/8250/8250_omap.c b/drivers/tty/serial/8250/8250_omap.c index afef1dd4ddf4..fca5f25d693a 100644 --- a/drivers/tty/serial/8250/8250_omap.c +++ b/drivers/tty/serial/8250/8250_omap.c @@ -1581,7 +1581,7 @@ static int omap8250_probe(struct platform_device *pdev) ret = devm_request_irq(&pdev->dev, up.port.irq, omap8250_irq, 0, dev_name(&pdev->dev), priv); if (ret < 0) - return ret; + goto err; priv->wakeirq = irq_of_parse_and_map(np, 1); |