Re: [PATCH 1/2] serial: imx: fix crash when un/re-binding console

From: Francesco Dolcini
Date: Thu Oct 14 2021 - 04:02:14 EST


Hello Greg,

On Thu, Oct 14, 2021 at 09:33:55AM +0200, Greg Kroah-Hartman wrote:
> On Thu, Oct 14, 2021 at 09:10:52AM +0200, Francesco Dolcini wrote:
> > From: Stefan Agner <stefan@xxxxxxxx>
> >
> > If the device used as a serial console gets un/re-binded, then
> > register_console() will call imx_uart_setup_console() again.
> > Drop __init so that imx_uart_setup_console() can be safely called
> > at runtime.
> >
> > Signed-off-by: Stefan Agner <stefan@xxxxxxxx>
> > Signed-off-by: Francesco Dolcini <francesco.dolcini@xxxxxxxxxxx>
> > ---
> > drivers/tty/serial/imx.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
>
> What commit does this "fix"?

root@colibri-imx6ull-06746657:~# cat /sys/devices/virtual/tty/console/active
tty1 ttymxc0
root@colibri-imx6ull-06746657:~# echo -n N > /sys/devices/virtual/tty/console/subsystem/ttymxc0/console
root@colibri-imx6ull-06746657:~# echo -n Y > /sys/devices/virtual/tty/console/subsystem/ttymxc0/console

struct console ->setup is called at that time, but imx_uart_console_setup() is gone ...

According to the original report from Stefan the issue is the same with unbind/bind of the console,
see https://marc.info/?l=linux-serial&m=154221779312036&w=2.


> Should this go to stable kernels? If so, how far back?
This is present also in 4.19 kernel, I feel like the issue is there since it is possible to unbind
a console driver (since ever considering the current LTS releases?). I could
investigate this a little bit more.

We have this patch in our kernel branch since 3 years but for some reason we never managed to upstream it.


Francesco