[PATCH] tty: serial: meson_uart: Init port lock early

Andy Shevchenko andy.shevchenko at gmail.com
Sun Jul 5 06:07:18 EDT 2020


On Sun, Jul 5, 2020 at 12:32 PM Marc Zyngier <maz at kernel.org> wrote:
>
> The meson UART driver triggers a lockdep splat at boot time, due
> to the new expectation that the driver has to initialize the
> per-port spinlock itself.
>
> It remains unclear why a double initialization of the port
> spinlock is a desirable outcome, but in the meantime let's
> fix the splat.
>

Thanks!

Can you test patch from [1] if it helps and doesn't break anything in your case?

[1]: https://lore.kernel.org/linux-serial/20200217114016.49856-1-andriy.shevchenko@linux.intel.com/T/#m9255e2a7474b160e66c7060fca5323ca3df49cfd

> Fixes: a3cb39d258ef ("serial: core: Allow detach and attach serial device for console")
> Cc: Andy Shevchenko <andriy.shevchenko at linux.intel.com>
> Cc: Greg Kroah-Hartman <gregkh at linuxfoundation.org>
> Signed-off-by: Marc Zyngier <maz at kernel.org>
> ---
>  drivers/tty/serial/meson_uart.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/tty/serial/meson_uart.c b/drivers/tty/serial/meson_uart.c
> index d2c08b760f83..386e39c90628 100644
> --- a/drivers/tty/serial/meson_uart.c
> +++ b/drivers/tty/serial/meson_uart.c
> @@ -759,6 +759,9 @@ static int meson_uart_probe(struct platform_device *pdev)
>         if (ret)
>                 return ret;
>
> +       /* Init the spinlock early in case this is the console */
> +       spin_lock_init(&port->lock);
> +
>         port->iotype = UPIO_MEM;
>         port->mapbase = res_mem->start;
>         port->mapsize = resource_size(res_mem);
> --
> 2.26.2
>


-- 
With Best Regards,
Andy Shevchenko



More information about the linux-amlogic mailing list