| From be59fa8c2c1943f0d6444f328d0644e85b7dc69d Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Tue, 5 Jan 2021 13:02:34 +0100 |
| Subject: vt/consolemap: do font sum unsigned |
| |
| From: Jiri Slaby <jslaby@suse.cz> |
| |
| [ Upstream commit 9777f8e60e718f7b022a94f2524f967d8def1931 ] |
| |
| The constant 20 makes the font sum computation signed which can lead to |
| sign extensions and signed wraps. It's not much of a problem as we build |
| with -fno-strict-overflow. But if we ever decide not to, be ready, so |
| switch the constant to unsigned. |
| |
| Signed-off-by: Jiri Slaby <jslaby@suse.cz> |
| Link: https://lore.kernel.org/r/20210105120239.28031-7-jslaby@suse.cz |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/tty/vt/consolemap.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| diff --git a/drivers/tty/vt/consolemap.c b/drivers/tty/vt/consolemap.c |
| index f7d015c67963..d815ac98b39e 100644 |
| --- a/drivers/tty/vt/consolemap.c |
| +++ b/drivers/tty/vt/consolemap.c |
| @@ -495,7 +495,7 @@ con_insert_unipair(struct uni_pagedir *p, u_short unicode, u_short fontpos) |
| |
| p2[unicode & 0x3f] = fontpos; |
| |
| - p->sum += (fontpos << 20) + unicode; |
| + p->sum += (fontpos << 20U) + unicode; |
| |
| return 0; |
| } |
| -- |
| 2.30.1 |
| |