summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJiri Slaby <jslaby@suse.cz>2016-05-03 17:05:54 +0200
committerJiri Slaby <jslaby@suse.cz>2016-06-15 09:32:08 +0200
commit24d2cacfa3dd21ba039479f6cd54d49f7c497606 (patch)
treede6135520cd5ab35ccec699207b17dae810f8b34
parent85734dfa7ff952a2caf5a9e285c76703e3725082 (diff)
downloadlwn-24d2cacfa3dd21ba039479f6cd54d49f7c497606.tar.gz
lwn-24d2cacfa3dd21ba039479f6cd54d49f7c497606.zip
tty: vt, return error when con_startup fails
commit 6798df4c5fe0a7e6d2065cf79649a794e5ba7114 upstream. When csw->con_startup() fails in do_register_con_driver, we return no error (i.e. 0). This was changed back in 2006 by commit 3e795de763. Before that we used to return -ENODEV. So fix the return value to be -ENODEV in that case again. Fixes: 3e795de763 ("VT binding: Add binding/unbinding support for the VT console") Signed-off-by: Jiri Slaby <jslaby@suse.cz> Reported-by: "Dan Carpenter" <dan.carpenter@oracle.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
-rw-r--r--drivers/tty/vt/vt.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
index e341fd52a80d..19aba5091408 100644
--- a/drivers/tty/vt/vt.c
+++ b/drivers/tty/vt/vt.c
@@ -3503,9 +3503,10 @@ static int do_register_con_driver(const struct consw *csw, int first, int last)
goto err;
desc = csw->con_startup();
-
- if (!desc)
+ if (!desc) {
+ retval = -ENODEV;
goto err;
+ }
retval = -EINVAL;