syzbot


INFO: task hung in do_fb_ioctl (2)

Status: fixed on 2021/09/21 12:35
Reported-by: syzbot+0d580edd5df3dc9178e5@syzkaller.appspotmail.com
Fix commit: 6be10fb6c143 fbmem: add margin check to fb_check_caps()
First crash: 1604d, last: 1189d
Fix bisection: fixed by (bisect log) :
commit 6be10fb6c143608a7c7ab3901a096e272233bf64
Author: George Kennedy <george.kennedy@oracle.com>
Date: Tue Jul 7 19:26:03 2020 +0000

  fbmem: add margin check to fb_check_caps()

  
Similar bugs (6)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: task hung in do_fb_ioctl (4) fbdev 1 559d 559d 0/28 auto-obsoleted due to no activity on 2023/07/13 16:33
upstream INFO: task hung in do_fb_ioctl (3) fbdev 2 786d 811d 0/28 auto-obsoleted due to no activity on 2023/01/02 23:29
upstream INFO: task hung in do_fb_ioctl (2) fbdev 1 1006d 1006d 0/28 auto-closed as invalid on 2022/05/22 20:52
linux-4.19 INFO: task hung in do_fb_ioctl 1 1780d 1780d 0/1 auto-closed as invalid on 2020/05/08 18:42
upstream INFO: task hung in do_fb_ioctl fbdev 47 1569d 1777d 0/28 closed as dup on 2020/07/27 22:56
linux-4.14 INFO: task hung in do_fb_ioctl C error 24 1458d 1817d 0/1 upstream: reported C repro on 2019/12/03 05:09
Fix bisection attempts (11)
Created Duration User Patch Repo Result
2021/09/21 04:13 3h34m bisect fix linux-4.19.y OK (1) job log
2021/08/22 03:37 35m bisect fix linux-4.19.y OK (0) job log log
2021/07/23 03:06 28m bisect fix linux-4.19.y OK (0) job log log
2021/06/23 00:29 30m bisect fix linux-4.19.y OK (0) job log log
2021/05/23 23:55 33m bisect fix linux-4.19.y OK (0) job log log
2021/04/23 13:20 30m bisect fix linux-4.19.y OK (0) job log log
2021/03/24 12:40 30m bisect fix linux-4.19.y OK (0) job log log
2021/02/22 08:40 29m bisect fix linux-4.19.y OK (0) job log log
2021/02/18 17:15 18m bisect fix linux-4.19.y error job log
2021/02/14 05:50 0m bisect fix linux-4.19.y error job log
2021/01/15 05:19 30m bisect fix linux-4.19.y OK (0) job log log

Sample crash report:
INFO: task syz-executor028:8544 blocked for more than 140 seconds.
      Not tainted 4.19.163-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
syz-executor028 D28536  8544   8113 0x00000004
Call Trace:
 context_switch kernel/sched/core.c:2828 [inline]
 __schedule+0x887/0x2040 kernel/sched/core.c:3517
 schedule+0x8d/0x1b0 kernel/sched/core.c:3561
 schedule_timeout+0x92d/0xfe0 kernel/time/timer.c:1794
 __down_common kernel/locking/semaphore.c:221 [inline]
 __down+0x183/0x2a0 kernel/locking/semaphore.c:238
 down+0x57/0x80 kernel/locking/semaphore.c:62
 console_lock+0x25/0x80 kernel/printk/printk.c:2275
 do_fb_ioctl+0x33e/0xb50 drivers/video/fbdev/core/fbmem.c:1109
 fb_ioctl+0xdd/0x130 drivers/video/fbdev/core/fbmem.c:1230
 vfs_ioctl fs/ioctl.c:46 [inline]
 file_ioctl fs/ioctl.c:501 [inline]
 do_vfs_ioctl+0xcdb/0x12e0 fs/ioctl.c:688
 ksys_ioctl+0x9b/0xc0 fs/ioctl.c:705
 __do_sys_ioctl fs/ioctl.c:712 [inline]
 __se_sys_ioctl fs/ioctl.c:710 [inline]
 __x64_sys_ioctl+0x6f/0xb0 fs/ioctl.c:710
 do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293
 entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x445189
Code: Bad RIP value.
RSP: 002b:00007ffca2fb0678 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000020000080 RCX: 0000000000445189
RDX: 0000000020000000 RSI: 0000000000004601 RDI: 0000000000000003
RBP: 000000000008baa0 R08: 00000000004002e0 R09: 00000000004002e0
R10: 0000000000000004 R11: 0000000000000246 R12: 0000000000402350
R13: 00000000004023e0 R14: 0000000000000000 R15: 0000000000000000

Showing all locks held in the system:
1 lock held by khungtaskd/1566:
 #0: 000000005dfd84a0 (rcu_read_lock){....}, at: debug_show_all_locks+0x53/0x265 kernel/locking/lockdep.c:4440
1 lock held by in:imklog/7785:
 #0: 00000000d24e1f0a (&f->f_pos_lock){+.+.}, at: __fdget_pos+0x26f/0x310 fs/file.c:767
2 locks held by agetty/7765:
 #0: 0000000044ab7ebb (&tty->ldisc_sem){++++}, at: tty_ldisc_ref_wait+0x22/0x80 drivers/tty/tty_ldisc.c:272
 #1: 00000000eff0ff06 (&ldata->atomic_read_lock){+.+.}, at: n_tty_read+0x217/0x1950 drivers/tty/n_tty.c:2154
7 locks held by kworker/u4:5/8057:

=============================================

NMI backtrace for cpu 1
CPU: 1 PID: 1566 Comm: khungtaskd Not tainted 4.19.163-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 __dump_stack lib/dump_stack.c:77 [inline]
 dump_stack+0x1fc/0x2fe lib/dump_stack.c:118
 nmi_cpu_backtrace.cold+0x63/0xa2 lib/nmi_backtrace.c:101
 nmi_trigger_cpumask_backtrace+0x1a6/0x1eb lib/nmi_backtrace.c:62
 trigger_all_cpu_backtrace include/linux/nmi.h:146 [inline]
 check_hung_uninterruptible_tasks kernel/hung_task.c:203 [inline]
 watchdog+0x991/0xe60 kernel/hung_task.c:287
 kthread+0x33f/0x460 kernel/kthread.c:259
 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 8057 Comm: kworker/u4:5 Not tainted 4.19.163-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: events_unbound flush_to_ldisc
RIP: 0010:__sanitizer_cov_trace_pc+0x0/0x50 kernel/kcov.c:97
Code: 48 c7 c7 80 00 6e 88 4c 89 25 cc 39 bf 0b 41 bc f4 ff ff ff e8 a0 f9 ea ff 48 c7 05 b6 39 bf 0b 00 00 00 00 e9 39 ec ff ff 90 <48> 8b 34 24 65 48 8b 04 25 80 df 01 00 65 8b 15 ec 0e 9d 7e 81 e2
RSP: 0018:ffff88808f8274c8 EFLAGS: 00000216
RAX: 0000000000000000 RBX: 0000000000000050 RCX: ffffffff83a868c4
RDX: 0000000000000044 RSI: ffff88809267e500 RDI: 0000000000000004
RBP: 0000000000000044 R08: 0000000000000010 R09: 0000000000000050
R10: 0000000000000004 R11: 0000000000000000 R12: ffff8880000a0044
R13: ffff8880000a0000 R14: 0000000000000000 R15: 00000000ea302b3e
FS:  0000000000000000(0000) GS:ffff8880ba000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00000000006cf090 CR3: 00000000a477f000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 writeb arch/x86/include/asm/io.h:65 [inline]
 vga16fb_fillrect+0x9c0/0x1940 drivers/video/fbdev/vga16fb.c:923
 bit_clear+0x382/0x4d0 drivers/video/fbdev/core/bitblit.c:74
 fbcon_clear+0x5d6/0x690 drivers/video/fbdev/core/fbcon.c:1258
 fbcon_scroll+0x42e/0x3440 drivers/video/fbdev/core/fbcon.c:1756
 con_scroll+0x5f8/0x720 drivers/tty/vt/vt.c:637
 lf+0x262/0x2b0 drivers/tty/vt/vt.c:1491
 do_con_write+0x133e/0x1d90 drivers/tty/vt/vt.c:2768
 con_put_char+0x96/0xe0 drivers/tty/vt/vt.c:3155
 tty_put_char+0xb7/0x150 drivers/tty/tty_io.c:2892
 do_output_char+0x155/0x850 drivers/tty/n_tty.c:486
 __process_echoes+0x38e/0x9f0 drivers/tty/n_tty.c:737
 flush_echoes drivers/tty/n_tty.c:827 [inline]
 __receive_buf drivers/tty/n_tty.c:1646 [inline]
 n_tty_receive_buf_common+0xc0c/0x2a90 drivers/tty/n_tty.c:1740
 tty_ldisc_receive_buf+0xa9/0x190 drivers/tty/tty_buffer.c:456
 tty_port_default_receive_buf+0x78/0xa0 drivers/tty/tty_port.c:38
 receive_buf drivers/tty/tty_buffer.c:476 [inline]
 flush_to_ldisc+0x21f/0x390 drivers/tty/tty_buffer.c:528
 process_one_work+0x864/0x1570 kernel/workqueue.c:2155
 worker_thread+0x64c/0x1130 kernel/workqueue.c:2298
 kthread+0x33f/0x460 kernel/kthread.c:259
 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415

Crashes (7):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/12/16 01:26 linux-4.19.y 13d2ce42de8c f213e07e .config console log report syz C ci2-linux-4-19
2020/11/21 00:04 linux-4.19.y 2c746135a12e 68068804 .config console log report syz C ci2-linux-4-19
2020/11/24 14:21 linux-4.19.y 0c88e405c97e 1ab681a4 .config console log report info ci2-linux-4-19
2020/11/03 09:44 linux-4.19.y f5d8eef067ac cba33199 .config console log report info ci2-linux-4-19
2020/07/16 20:11 linux-4.19.y 17a87580a885 b090c643 .config console log report ci2-linux-4-19
2020/07/16 18:07 linux-4.19.y 17a87580a885 b090c643 .config console log report ci2-linux-4-19
2020/07/03 05:27 linux-4.19.y 399849e4654e f30c14bf .config console log report ci2-linux-4-19
* Struck through repros no longer work on HEAD.