summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorImre Deak <imre.deak@intel.com>2014-10-02 16:34:31 +0300
committerZefan Li <lizefan@huawei.com>2015-02-02 17:05:15 +0800
commit0bb9566eaaabf31b2368340fbedc34010c09e8f0 (patch)
tree979b368c7c2874252b4a1040c5305d4c1fb2acb2 /drivers
parent871518e986137e72b3ad20e5b3fd7093cda69bbf (diff)
tty/vt: don't set font mappings on vc not supporting this
commit 9e326f78713a4421fe11afc2ddeac07698fac131 upstream. We can call this function for a dummy console that doesn't support setting the font mapping, which will result in a null ptr BUG. So check for this case and return error for consoles w/o font mapping support. Reference: https://bugzilla.kernel.org/show_bug.cgi?id=59321 Signed-off-by: Imre Deak <imre.deak@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> [lizf: Backported to 3.4: just return -EINVAL as we don't need to unlock] Signed-off-by: Zefan Li <lizefan@huawei.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/tty/vt/consolemap.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/tty/vt/consolemap.c b/drivers/tty/vt/consolemap.c
index 8308fc7cdc26..87025d01aaec 100644
--- a/drivers/tty/vt/consolemap.c
+++ b/drivers/tty/vt/consolemap.c
@@ -518,6 +518,10 @@ int con_set_unimap(struct vc_data *vc, ushort ct, struct unipair __user *list)
/* Save original vc_unipagdir_loc in case we allocate a new one */
p = (struct uni_pagedir *)*vc->vc_uni_pagedir_loc;
+
+ if (!p)
+ return -EINVAL;
+
if (p->readonly) return -EIO;
if (!ct) return 0;