diff options
author | Imre Deak <imre.deak@intel.com> | 2014-10-02 16:34:31 +0300 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2014-12-14 16:23:55 +0000 |
commit | 2e0f55eaf9b604eb3ae84802b668003ecd7946bc (patch) | |
tree | be0bfe95ceed83942e2bd985f09ebfd0597b0ba8 | |
parent | 069347b245ac0afe052f68e7f5ea734207f826f4 (diff) | |
download | lwn-2e0f55eaf9b604eb3ae84802b668003ecd7946bc.tar.gz lwn-2e0f55eaf9b604eb3ae84802b668003ecd7946bc.zip |
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>
[bwh: Backported to 3.2: this function doesn't take a lock, so doesn't
need to unlock on error]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r-- | drivers/tty/vt/consolemap.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/tty/vt/consolemap.c b/drivers/tty/vt/consolemap.c index f3438083a285..fb95accd6798 100644 --- a/drivers/tty/vt/consolemap.c +++ b/drivers/tty/vt/consolemap.c @@ -518,6 +518,8 @@ 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; |