linux/drivers/video/fbdev/core
Helge Deller d78bd6cc68 fbcon: Fix null-ptr-deref in soft_cursor
syzbot repored this bug in the softcursor code:

BUG: KASAN: null-ptr-deref in soft_cursor+0x384/0x6b4 drivers/video/fbdev/core/softcursor.c:70
Read of size 16 at addr 0000000000000200 by task kworker/u4:1/12

CPU: 0 PID: 12 Comm: kworker/u4:1 Not tainted 6.4.0-rc3-syzkaller-geb0f1697d729 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/28/2023
Workqueue: events_power_efficient fb_flashcursor
Call trace:
 dump_backtrace+0x1b8/0x1e4 arch/arm64/kernel/stacktrace.c:233
 show_stack+0x2c/0x44 arch/arm64/kernel/stacktrace.c:240
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0xd0/0x124 lib/dump_stack.c:106
 print_report+0xe4/0x514 mm/kasan/report.c:465
 kasan_report+0xd4/0x130 mm/kasan/report.c:572
 kasan_check_range+0x264/0x2a4 mm/kasan/generic.c:187
 __asan_memcpy+0x3c/0x84 mm/kasan/shadow.c:105
 soft_cursor+0x384/0x6b4 drivers/video/fbdev/core/softcursor.c:70
 bit_cursor+0x113c/0x1a64 drivers/video/fbdev/core/bitblit.c:377
 fb_flashcursor+0x35c/0x54c drivers/video/fbdev/core/fbcon.c:380
 process_one_work+0x788/0x12d4 kernel/workqueue.c:2405
 worker_thread+0x8e0/0xfe8 kernel/workqueue.c:2552
 kthread+0x288/0x310 kernel/kthread.c:379
 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:853

This fix let bit_cursor() bail out early when a font bitmap
isn't available yet.

Signed-off-by: Helge Deller <deller@gmx.de>
Reported-by: syzbot+d910bd780e6efac35869@syzkaller.appspotmail.com
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Cc: stable@kernel.org
2023-05-27 19:18:59 +02:00
..
Makefile fbdev: Handle video= parameter in video/cmdline.c 2023-02-20 14:56:48 +01:00
bitblit.c fbcon: Fix null-ptr-deref in soft_cursor 2023-05-27 19:18:59 +02:00
cfbcopyarea.c
cfbfillrect.c
cfbimgblt.c fbdev: Fix cfb_imageblit() for arbitrary image widths 2022-03-25 09:55:54 +10:00
fb_cmdline.c fbdev: Handle video= parameter in video/cmdline.c 2023-02-20 14:56:48 +01:00
fb_ddc.c
fb_defio.c Merge drm/drm-fixes into drm-misc-fixes 2023-03-13 10:14:05 +01:00
fb_draw.h
fb_notify.c
fb_sys_fops.c
fbcmap.c
fbcon.c fbcon: set_con2fb_map needs to set con2fb_map! 2023-04-13 20:10:11 +02:00
fbcon.h fbcon: Replace FBCON_FLAGS_INIT with a boolean 2022-04-07 16:52:13 +02:00
fbcon_ccw.c
fbcon_cw.c
fbcon_rotate.c
fbcon_rotate.h
fbcon_ud.c
fbcvt.c
fbmem.c fbdev: fbmem: mark get_fb_unmapped_area() static 2023-05-20 07:02:12 +02:00
fbmon.c fbdev: fbmon: fix function name in kernel-doc 2023-01-16 09:37:31 +01:00
fbsysfs.c drm/fbdev: Remove aperture handling and FBINFO_MISC_FIRMWARE 2023-01-13 12:54:35 +01:00
modedb.c fbdev: modedb: Add 1920x1080 at 60 Hz video mode 2023-05-12 11:00:04 +02:00
softcursor.c
svgalib.c
syscopyarea.c
sysfillrect.c
sysimgblt.c fbdev: Fix sys_imageblit() for arbitrary image widths 2022-03-25 09:55:52 +10:00
tileblit.c