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

Uwe Kleine-König u.kleine-koenig at pengutronix.de
Thu Oct 14 01:10:28 PDT 2021


On Thu, Oct 14, 2021 at 10:01:53AM +0200, Francesco Dolcini wrote:
> 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 at agner.ch>
> > > 
> > > 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 at agner.ch>
> > > Signed-off-by: Francesco Dolcini <francesco.dolcini at toradex.com>
> > > ---
> > >  drivers/tty/serial/imx.c | 4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > What commit does this "fix"?
> 
> root at colibri-imx6ull-06746657:~# cat /sys/devices/virtual/tty/console/active 
> tty1 ttymxc0
> root at colibri-imx6ull-06746657:~# echo -n N > /sys/devices/virtual/tty/console/subsystem/ttymxc0/console
> root at 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.

I think this is a bigger problem not only affecting imx.c. Just look at
the output of:

	git grep -E '__init.*setup' drivers/tty/serial/

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | https://www.pengutronix.de/ |
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20211014/dae85e5c/attachment.sig>


More information about the linux-arm-kernel mailing list