public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tty: Set correct tty name in 'active' sysfs attribute
@ 2014-02-05 10:11 Hannes Reinecke
  2014-02-05 12:53 ` [systemd-devel] " David Herrmann
  2014-02-05 16:38 ` Greg KH
  0 siblings, 2 replies; 7+ messages in thread
From: Hannes Reinecke @ 2014-02-05 10:11 UTC (permalink / raw)
  To: systemd-devel
  Cc: linux-kernel, Hannes Reinecke, Lennart Poettering, Kay Sievers,
	Werner Fink

The 'active' sysfs attribute should refer to the currently
active tty devices the console is running on, not the currently
active console.
The console structure doesn't refer to any device in sysfs,
only the tty the console is running on has.
So we need to print out the tty names in 'active', not
the console names.

Cc: Lennart Poettering <lennart@poettering.net>
Cc: Kay Sievers <kay@vrfy.org>
Signed-off-by: Werner Fink <werner@suse.de>
Signed-off-by: Hannes Reinecke <hare@suse.de>
---
 drivers/tty/tty_io.c | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c
index c74a00a..17db8ca 100644
--- a/drivers/tty/tty_io.c
+++ b/drivers/tty/tty_io.c
@@ -3545,9 +3545,19 @@ static ssize_t show_cons_active(struct device *dev,
 		if (i >= ARRAY_SIZE(cs))
 			break;
 	}
-	while (i--)
+	while (i--) {
+		const struct tty_driver *driver;
+		const char *name = cs[i]->name;
+		int index = cs[i]->index;
+
+		driver = cs[i]->device(cs[i], &index);
+		if (driver) {
+			index += driver->name_base;
+			name = driver->name;
+		}
 		count += sprintf(buf + count, "%s%d%c",
-				 cs[i]->name, cs[i]->index, i ? ' ':'\n');
+				 name, index, i ? ' ':'\n');
+	}
 	console_unlock();
 
 	return count;
-- 
1.7.12.4


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-02-06 15:46 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-05 10:11 [PATCH] tty: Set correct tty name in 'active' sysfs attribute Hannes Reinecke
2014-02-05 12:53 ` [systemd-devel] " David Herrmann
2014-02-05 13:53   ` Peter Hurley
2014-02-05 14:05     ` David Herrmann
2014-02-05 14:19       ` Peter Hurley
2014-02-06 15:46   ` Hannes Reinecke
2014-02-05 16:38 ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox