Thread (9 messages) 9 messages, 3 authors, 2021-10-14

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

From: Uwe Kleine-König <hidden>
Date: 2021-10-14 08:10:45
Also in: linux-arm-kernel, lkml

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:
quoted
On Thu, Oct 14, 2021 at 09:10:52AM +0200, Francesco Dolcini wrote:
quoted
From: Stefan Agner <stefan@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@agner.ch>
Signed-off-by: Francesco Dolcini <redacted>
---
 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.

quoted
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/ |

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help