From: John Ogness <john.ogness@linutronix.de> Date: Fri, 10 Mar 2023 13:08:01 +0000 Subject: [PATCH 16/24] tty: tty_io: Show non-BKL consoles as active /sys/class/tty/console/active shows the consoles that are currently registered and enabled and are able to print (i.e. have implemented a write() callback). This is used by userspace programs such as systemd's systemd-getty-generator to determine where consoles are in order to automatically start a getty instance. The non-BKL consoles do not implement write() but also should be shown as an active console. Expand the conditions to also check if the callbacks write_thread() or write_atomic() are implemented for non-BKL consoles. Signed-off-by: John Ogness <john.ogness@linutronix.de> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- drivers/tty/tty_io.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) Index: linux-6.3.0-rt11/drivers/tty/tty_io.c =================================================================== @ linux-6.3.0-rt11/drivers/tty/tty_io.c:3546 @ static ssize_t show_cons_active(struct d for_each_console(c) { if (!c->device) continue; - if (!c->write) - continue; + if (c->flags & CON_NO_BKL) { + if (!(c->write_thread || c->write_atomic)) + continue; + } else { + if (!c->write) + continue; + } if ((c->flags & CON_ENABLED) == 0) continue; cs[i++] = c;