syzbot


BUG: unable to handle kernel paging request in bitfill_aligned (3)

Status: upstream: reported C repro on 2022/07/11 07:58
Reported-by: syzbot+a168dbeaaa7778273c1b@syzkaller.appspotmail.com
Fix commit: a5a923038d70 fbdev: fbcon: Properly revert changes when vc_resize() failed
Patched on: [ci-qemu-upstream ci-qemu-upstream-386 ci-qemu2-arm32 ci-qemu2-arm64 ci-qemu2-arm64-compat ci-qemu2-arm64-mte ci-upstream-bpf-kasan-gce ci-upstream-bpf-next-kasan-gce ci-upstream-gce-arm64 ci-upstream-gce-leak ci-upstream-kasan-gce ci-upstream-kasan-gce-386 ci-upstream-kasan-gce-root ci-upstream-kasan-gce-selinux-root ci-upstream-kasan-gce-smack-root ci-upstream-kmsan-gce ci-upstream-kmsan-gce-386 ci-upstream-linux-next-kasan-gce-root ci-upstream-net-kasan-gce ci-upstream-net-this-kasan-gce ci2-upstream-fs ci2-upstream-kcsan-gce ci2-upstream-usb], missing on: [ci-qemu2-riscv64]
First crash: 208d, last: 160d

Cause bisection: introduced by (bisect log) [no-op commit]:
commit c71af3dae3e34d2fde0c19623cf7f8483321f0e3
Author: Miaoqian Lin <linmq006@gmail.com>
Date: Fri Jan 7 08:36:32 2022 +0000

  drm/sun4i: dw-hdmi: Fix missing put_device() call in sun8i_hdmi_phy_get

Crash: SYZFATAL: executor failed NUM times: executor NUM: failed to write control pipe: write |NUM: broken pipe (log)
Repro: C syz .config
similar bugs (4):
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.14 BUG: unable to handle kernel paging request in bitfill_aligned 1 164d 164d 0/1 auto-obsoleted due to no activity on 2022/12/16 16:52
linux-4.19 BUG: unable to handle kernel paging request in bitfill_aligned C error 10 7d07h 416d 0/1 upstream: reported C repro on 2021/12/10 10:17
upstream BUG: unable to handle kernel paging request in bitfill_aligned (2) C inconclusive done 26 396d 803d 22/24 fixed on 2022/05/13 11:13
upstream BUG: unable to handle kernel paging request in bitfill_aligned 1 995d 993d 0/24 closed as dup on 2020/08/16 15:35

Sample crash report:
BUG: unable to handle page fault for address: ffffc900041c1000
#PF: supervisor write access in kernel mode
#PF: error_code(0x0002) - not-present page
PGD 11800067 P4D 11800067 PUD 119c9067 PMD 1c5d7067 PTE 0
Oops: 0002 [#1] PREEMPT SMP KASAN
CPU: 1 PID: 3625 Comm: syz-executor419 Not tainted 6.0.0-rc2-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/22/2022
RIP: 0010:memset64 arch/x86/include/asm/string_64.h:49 [inline]
RIP: 0010:memset_l include/linux/string.h:128 [inline]
RIP: 0010:bitfill_aligned drivers/video/fbdev/core/sysfillrect.c:53 [inline]
RIP: 0010:bitfill_aligned+0x182/0x210 drivers/video/fbdev/core/sysfillrect.c:25
Code: 08 48 33 45 f8 48 89 45 f8 89 d8 44 29 e8 41 29 c4 e8 92 a5 42 fd 44 89 e0 31 d2 48 89 ef f7 f3 49 89 c4 48 89 c1 48 8b 04 24 <f3> 48 ab 31 ff 4c 89 f6 e8 51 a2 42 fd 4d 85 f6 0f 84 69 ff ff ff
RSP: 0018:ffffc9000375f7d8 EFLAGS: 00010212
RAX: 0000000000000000 RBX: 0000000000000040 RCX: 00000000000001fc
RDX: 0000000000000000 RSI: ffffffff843965be RDI: ffffc900041c1000
RBP: ffffc900041ba000 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000000 R11: ffff88813fffa700 R12: 0000000000000ffc
R13: 0000000000000000 R14: 0000000000000000 R15: 000000000003ff00
FS:  0000555556723300(0000) GS:ffff8880b9b00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffffc900041c1000 CR3: 0000000070094000 CR4: 0000000000350ee0
Call Trace:
 <TASK>
 sys_fillrect+0x431/0x800 drivers/video/fbdev/core/sysfillrect.c:281
 drm_fb_helper_sys_fillrect drivers/gpu/drm/drm_fb_helper.c:807 [inline]
 drm_fbdev_fb_fillrect+0x172/0x360 drivers/gpu/drm/drm_fb_helper.c:2322
 bit_clear_margins+0x2d5/0x4b0 drivers/video/fbdev/core/bitblit.c:232
 fbcon_clear_margins.constprop.0+0x175/0x1c0 drivers/video/fbdev/core/fbcon.c:1306
 fbcon_do_set_font+0x5e1/0x6f0 drivers/video/fbdev/core/fbcon.c:2431
 fbcon_set_font+0x89d/0xab0 drivers/video/fbdev/core/fbcon.c:2519
 con_font_set drivers/tty/vt/vt.c:4666 [inline]
 con_font_op+0x73a/0xc90 drivers/tty/vt/vt.c:4710
 vt_k_ioctl drivers/tty/vt/vt_ioctl.c:474 [inline]
 vt_ioctl+0x1efa/0x2b20 drivers/tty/vt/vt_ioctl.c:752
 tty_ioctl+0xfab/0x15d0 drivers/tty/tty_io.c:2778
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:870 [inline]
 __se_sys_ioctl fs/ioctl.c:856 [inline]
 __x64_sys_ioctl+0x193/0x200 fs/ioctl.c:856
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f3ee028d239
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 b1 14 00 00 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 c0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffcdcbe0d88 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 00007f3ee028d239
RDX: 0000000020000000 RSI: 0000000000004b72 RDI: 0000000000000004
RBP: 00007ffcdcbe0da0 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000005
R13: 00007ffcdcbe0d9c R14: 00007ffcdcbe0dc0 R15: 00007ffcdcbe0db0
 </TASK>
Modules linked in:
CR2: ffffc900041c1000
---[ end trace 0000000000000000 ]---
RIP: 0010:memset64 arch/x86/include/asm/string_64.h:49 [inline]
RIP: 0010:memset_l include/linux/string.h:128 [inline]
RIP: 0010:bitfill_aligned drivers/video/fbdev/core/sysfillrect.c:53 [inline]
RIP: 0010:bitfill_aligned+0x182/0x210 drivers/video/fbdev/core/sysfillrect.c:25
Code: 08 48 33 45 f8 48 89 45 f8 89 d8 44 29 e8 41 29 c4 e8 92 a5 42 fd 44 89 e0 31 d2 48 89 ef f7 f3 49 89 c4 48 89 c1 48 8b 04 24 <f3> 48 ab 31 ff 4c 89 f6 e8 51 a2 42 fd 4d 85 f6 0f 84 69 ff ff ff
RSP: 0018:ffffc9000375f7d8 EFLAGS: 00010212
RAX: 0000000000000000 RBX: 0000000000000040 RCX: 00000000000001fc
RDX: 0000000000000000 RSI: ffffffff843965be RDI: ffffc900041c1000
RBP: ffffc900041ba000 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000000 R11: ffff88813fffa700 R12: 0000000000000ffc
R13: 0000000000000000 R14: 0000000000000000 R15: 000000000003ff00
FS:  0000555556723300(0000) GS:ffff8880b9b00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffffc900041c1000 CR3: 0000000070094000 CR4: 0000000000350ee0
----------------
Code disassembly (best guess):
   0:	08 48 33             	or     %cl,0x33(%rax)
   3:	45 f8                	rex.RB clc
   5:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
   9:	89 d8                	mov    %ebx,%eax
   b:	44 29 e8             	sub    %r13d,%eax
   e:	41 29 c4             	sub    %eax,%r12d
  11:	e8 92 a5 42 fd       	callq  0xfd42a5a8
  16:	44 89 e0             	mov    %r12d,%eax
  19:	31 d2                	xor    %edx,%edx
  1b:	48 89 ef             	mov    %rbp,%rdi
  1e:	f7 f3                	div    %ebx
  20:	49 89 c4             	mov    %rax,%r12
  23:	48 89 c1             	mov    %rax,%rcx
  26:	48 8b 04 24          	mov    (%rsp),%rax
* 2a:	f3 48 ab             	rep stos %rax,%es:(%rdi) <-- trapping instruction
  2d:	31 ff                	xor    %edi,%edi
  2f:	4c 89 f6             	mov    %r14,%rsi
  32:	e8 51 a2 42 fd       	callq  0xfd42a288
  37:	4d 85 f6             	test   %r14,%r14
  3a:	0f 84 69 ff ff ff    	je     0xffffffa9

Crashes (11):
Manager Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets Title
ci-upstream-kasan-gce-root 2022/08/22 23:18 upstream 1c23f9e627a7 26a13b38 .config strace log report syz C BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-smack-root 2022/08/13 13:11 upstream 7ebfc85e2cd7 8dfcaa3d .config strace log report syz C BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-root 2022/08/15 07:39 upstream 7ebfc85e2cd7 8dfcaa3d .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-smack-root 2022/08/13 15:40 upstream 7ebfc85e2cd7 8dfcaa3d .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-smack-root 2022/08/13 12:02 upstream 7ebfc85e2cd7 8dfcaa3d .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-root 2022/07/21 01:35 upstream 353f7988dd84 88cb1383 .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-smack-root 2022/07/13 15:35 upstream b047602d579b 5d921b08 .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-root 2022/07/12 08:08 upstream 5a29232d870d da3d6955 .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-smack-root 2022/07/06 03:09 upstream e35e5b6f695d bff65f44 .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-kasan-gce-root 2022/07/06 02:47 upstream e35e5b6f695d bff65f44 .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
ci-upstream-linux-next-kasan-gce-root 2022/08/15 07:38 linux-next 6c8f479764eb 8dfcaa3d .config console log report info BUG: unable to handle kernel paging request in bitfill_aligned
* Struck through repros no longer work on HEAD.