summaryrefslogtreecommitdiffstats
path: root/drivers/tty/vt
diff options
context:
space:
mode:
authorJiri Slaby <jslaby@suse.cz>2016-05-03 17:05:55 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-05-04 00:59:15 +0200
commit96317e9e2a12d01eaaebf6b1e92b0f96c121e20a (patch)
tree1b8c7664675f7c4e5430932597f841c9f7e9ead3 /drivers/tty/vt
parenttty: vt, return error when con_startup fails (diff)
downloadlinux-96317e9e2a12d01eaaebf6b1e92b0f96c121e20a.tar.xz
linux-96317e9e2a12d01eaaebf6b1e92b0f96c121e20a.zip
tty: vt, finish looping on duplicate
When the console is already registered, stop crawling the registered_con_driver array and return an error immediatelly. This makes the code more obvious. And we do not need to initialize retval anymore. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/vt')
-rw-r--r--drivers/tty/vt/vt.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
index 3ed1ae211acc..dc125322f48f 100644
--- a/drivers/tty/vt/vt.c
+++ b/drivers/tty/vt/vt.c
@@ -3575,7 +3575,7 @@ static int do_register_con_driver(const struct consw *csw, int first, int last)
struct module *owner = csw->owner;
struct con_driver *con_driver;
const char *desc;
- int i, retval = 0;
+ int i, retval;
WARN_CONSOLE_UNLOCKED();
@@ -3586,13 +3586,12 @@ static int do_register_con_driver(const struct consw *csw, int first, int last)
con_driver = &registered_con_driver[i];
/* already registered */
- if (con_driver->con == csw)
+ if (con_driver->con == csw) {
retval = -EBUSY;
+ goto err;
+ }
}
- if (retval)
- goto err;
-
desc = csw->con_startup();
if (!desc) {
retval = -ENODEV;