fbdev: stifb: Make the STI next font pointer a 32-bit signed offset
authorHelge Deller <deller@gmx.de>
Fri, 27 Oct 2023 11:36:48 +0000 (13:36 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Dec 2023 07:51:19 +0000 (08:51 +0100)
[ Upstream commit 8a32aa17c1cd48df1ddaa78e45abcb8c7a2220d6 ]

The pointer to the next STI font is actually a signed 32-bit
offset. With this change the 64-bit kernel will correctly subract
the (signed 32-bit) offset instead of adding a (unsigned 32-bit)
offset. It has no effect on 32-bit kernels.

This fixes the stifb driver with a 64-bit kernel on qemu.

Signed-off-by: Helge Deller <deller@gmx.de>
Cc: stable@vger.kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/video/fbdev/sticore.h

index 0ebdd28..d83ab3d 100644 (file)
@@ -231,7 +231,7 @@ struct sti_rom_font {
         u8 height;
         u8 font_type;          /* language type */
         u8 bytes_per_char;
-       u32 next_font;
+       s32 next_font;          /* note: signed int */
         u8 underline_height;
         u8 underline_pos;
         u8 res008[2];