diff options
| -rw-r--r-- | Documentation/ABI/testing/sysfs-tty | 3 | ||||
| -rw-r--r-- | drivers/tty/tty_io.c | 25 |
2 files changed, 8 insertions, 20 deletions
diff --git a/Documentation/ABI/testing/sysfs-tty b/Documentation/ABI/testing/sysfs-tty index a2ccec35ffce..ad22fb0ee765 100644 --- a/Documentation/ABI/testing/sysfs-tty +++ b/Documentation/ABI/testing/sysfs-tty | |||
| @@ -3,8 +3,7 @@ Date: Nov 2010 | |||
| 3 | Contact: Kay Sievers <kay.sievers@vrfy.org> | 3 | Contact: Kay Sievers <kay.sievers@vrfy.org> |
| 4 | Description: | 4 | Description: |
| 5 | Shows the list of currently configured | 5 | Shows the list of currently configured |
| 6 | tty devices used for the console, | 6 | console devices, like 'tty1 ttyS0'. |
| 7 | like 'tty1 ttyS0'. | ||
| 8 | The last entry in the file is the active | 7 | The last entry in the file is the active |
| 9 | device connected to /dev/console. | 8 | device connected to /dev/console. |
| 10 | The file supports poll() to detect virtual | 9 | The file supports poll() to detect virtual |
diff --git a/drivers/tty/tty_io.c b/drivers/tty/tty_io.c index bd2715a9d8e5..c74a00ad7add 100644 --- a/drivers/tty/tty_io.c +++ b/drivers/tty/tty_io.c | |||
| @@ -1267,17 +1267,16 @@ static void pty_line_name(struct tty_driver *driver, int index, char *p) | |||
| 1267 | * @p: output buffer of at least 7 bytes | 1267 | * @p: output buffer of at least 7 bytes |
| 1268 | * | 1268 | * |
| 1269 | * Generate a name from a driver reference and write it to the output | 1269 | * Generate a name from a driver reference and write it to the output |
| 1270 | * buffer. Return the number of bytes written. | 1270 | * buffer. |
| 1271 | * | 1271 | * |
| 1272 | * Locking: None | 1272 | * Locking: None |
| 1273 | */ | 1273 | */ |
| 1274 | static ssize_t tty_line_name(struct tty_driver *driver, int index, char *p) | 1274 | static void tty_line_name(struct tty_driver *driver, int index, char *p) |
| 1275 | { | 1275 | { |
| 1276 | if (driver->flags & TTY_DRIVER_UNNUMBERED_NODE) | 1276 | if (driver->flags & TTY_DRIVER_UNNUMBERED_NODE) |
| 1277 | return sprintf(p, "%s", driver->name); | 1277 | strcpy(p, driver->name); |
| 1278 | else | 1278 | else |
| 1279 | return sprintf(p, "%s%d", driver->name, | 1279 | sprintf(p, "%s%d", driver->name, index + driver->name_base); |
| 1280 | index + driver->name_base); | ||
| 1281 | } | 1280 | } |
| 1282 | 1281 | ||
| 1283 | /** | 1282 | /** |
| @@ -3546,19 +3545,9 @@ static ssize_t show_cons_active(struct device *dev, | |||
| 3546 | if (i >= ARRAY_SIZE(cs)) | 3545 | if (i >= ARRAY_SIZE(cs)) |
| 3547 | break; | 3546 | break; |
| 3548 | } | 3547 | } |
| 3549 | while (i--) { | 3548 | while (i--) |
| 3550 | struct tty_driver *driver; | 3549 | count += sprintf(buf + count, "%s%d%c", |
| 3551 | const char *name = cs[i]->name; | 3550 | cs[i]->name, cs[i]->index, i ? ' ':'\n'); |
| 3552 | int index = cs[i]->index; | ||
| 3553 | |||
| 3554 | driver = cs[i]->device(cs[i], &index); | ||
| 3555 | if (driver) { | ||
| 3556 | count += tty_line_name(driver, index, buf + count); | ||
| 3557 | count += sprintf(buf + count, "%c", i ? ' ':'\n'); | ||
| 3558 | } else | ||
| 3559 | count += sprintf(buf + count, "%s%d%c", | ||
| 3560 | name, index, i ? ' ':'\n'); | ||
| 3561 | } | ||
| 3562 | console_unlock(); | 3551 | console_unlock(); |
| 3563 | 3552 | ||
| 3564 | return count; | 3553 | return count; |
