Hello,
syzbot found the following crash on:
HEAD commit: 312017a4 Linux 4.19.89
git tree: linux-4.19.y
console output:
https://syzkaller.appspot.com/x/log.txt?x=16435c99e00000
kernel config:
https://syzkaller.appspot.com/x/.config?x=67c148d572dbab48
dashboard link:
https://syzkaller.appspot.com/bug?extid=bc44024ce696c8867cba
compiler: gcc (GCC) 9.0.0 20181231 (experimental)
Unfortunately, I don't have any reproducer for this crash yet.
IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by:
syzbot+bc4402...@syzkaller.appspotmail.com
RBP: 000000000075bf20 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f4dbfa346d4
R13: 00000000004c5ca8 R14: 00000000004dbf60 R15: 0000000000000004
selection: kmalloc() failed
INFO: task kworker/u4:5:8122 blocked for more than 140 seconds.
Not tainted 4.19.89-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
kworker/u4:5 D25160 8122 2 0x80000000
Workqueue: events_unbound flush_to_ldisc
Call Trace:
context_switch kernel/sched/core.c:2826 [inline]
__schedule+0x866/0x1dc0 kernel/sched/core.c:3515
schedule+0x92/0x1c0 kernel/sched/core.c:3559
schedule_preempt_disabled+0x13/0x20 kernel/sched/core.c:3617
__mutex_lock_common kernel/locking/mutex.c:1002 [inline]
__mutex_lock+0x726/0x1300 kernel/locking/mutex.c:1072
mutex_lock_nested+0x16/0x20 kernel/locking/mutex.c:1087
flush_to_ldisc+0x3d/0x390 drivers/tty/tty_buffer.c:500
process_one_work+0x989/0x1750 kernel/workqueue.c:2153
worker_thread+0x98/0xe40 kernel/workqueue.c:2296
kthread+0x354/0x420 kernel/kthread.c:246
ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415
INFO: task login:29371 blocked for more than 140 seconds.
Not tainted 4.19.89-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
login D26992 29371 1 0x00000004
Call Trace:
context_switch kernel/sched/core.c:2826 [inline]
__schedule+0x866/0x1dc0 kernel/sched/core.c:3515
schedule+0x92/0x1c0 kernel/sched/core.c:3559
schedule_timeout+0x8c8/0xfc0 kernel/time/timer.c:1782
do_wait_for_common kernel/sched/completion.c:83 [inline]
__wait_for_common kernel/sched/completion.c:104 [inline]
wait_for_common kernel/sched/completion.c:115 [inline]
wait_for_completion+0x29c/0x440 kernel/sched/completion.c:136
__flush_work+0x49f/0x870 kernel/workqueue.c:2920
flush_work+0x18/0x20 kernel/workqueue.c:2941
tty_buffer_flush_work+0x16/0x19 drivers/tty/tty_buffer.c:613
n_tty_read+0xb1a/0x1b70 drivers/tty/n_tty.c:2197
tty_read+0x193/0x2a0 drivers/tty/tty_io.c:867
__vfs_read+0x114/0x800 fs/read_write.c:416
vfs_read+0x194/0x3d0 fs/read_write.c:452
ksys_read+0x14f/0x2d0 fs/read_write.c:579
__do_sys_read fs/read_write.c:589 [inline]
__se_sys_read fs/read_write.c:587 [inline]
__x64_sys_read+0x73/0xb0 fs/read_write.c:587
do_syscall_64+0xfd/0x620 arch/x86/entry/common.c:293
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x7ff8c671c310
Code: Bad RIP value.
RSP: 002b:00007ffc41dc9598 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007ff8c671c310
RDX: 00000000000001ff RSI: 00007ffc41dc9800 RDI: 0000000000000000
RBP: 0000000000000000 R08: 00007ff8c6fff700 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007ffc41dc9800
R13: 0000000000000000 R14: 0000000000000001 R15: 000000000060b798
Showing all locks held in the system:
1 lock held by khungtaskd/1068:
#0: 000000000ba36c9c (rcu_read_lock){....}, at:
debug_show_all_locks+0x5f/0x27e kernel/locking/lockdep.c:4438
3 locks held by rs:main Q:Reg/7680:
#0: 0000000027477893 (&f->f_pos_lock){+.+.}, at: __fdget_pos+0xee/0x110
fs/file.c:767
#1: 00000000437fdee8 (sb_writers#4){.+.+}, at: file_start_write
include/linux/fs.h:2775 [inline]
#1: 00000000437fdee8 (sb_writers#4){.+.+}, at: vfs_write+0x429/0x560
fs/read_write.c:548
#2: 00000000099bd4db (&sb->s_type->i_mutex_key#9){++++}, at: inode_lock
include/linux/fs.h:747 [inline]
#2: 00000000099bd4db (&sb->s_type->i_mutex_key#9){++++}, at:
__generic_file_fsync+0xb5/0x200 fs/libfs.c:985
1 lock held by rsyslogd/7682:
#0: 00000000c7e12a64 (&f->f_pos_lock){+.+.}, at: __fdget_pos+0xee/0x110
fs/file.c:767
2 locks held by getty/7805:
#0: 00000000cc65e496 (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x33/0x40 drivers/tty/tty_ldsem.c:362
#1: 000000008b1506cc (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x232/0x1b70 drivers/tty/n_tty.c:2154
2 locks held by getty/7806:
#0: 00000000214b1019 (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x33/0x40 drivers/tty/tty_ldsem.c:362
#1: 000000008453f1e0 (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x232/0x1b70 drivers/tty/n_tty.c:2154
2 locks held by getty/7807:
#0: 000000000931bf6b (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x33/0x40 drivers/tty/tty_ldsem.c:362
#1: 000000001c0a70b7 (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x232/0x1b70 drivers/tty/n_tty.c:2154
2 locks held by getty/7808:
#0: 0000000050b7ec4b (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x33/0x40 drivers/tty/tty_ldsem.c:362
#1: 00000000cc65e48d (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x232/0x1b70 drivers/tty/n_tty.c:2154
2 locks held by getty/7809:
#0: 00000000739cd22f (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x33/0x40 drivers/tty/tty_ldsem.c:362
#1: 000000001db64476 (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x232/0x1b70 drivers/tty/n_tty.c:2154
2 locks held by getty/7810:
#0: 000000009e8b16b6 (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x33/0x40 drivers/tty/tty_ldsem.c:362
#1: 000000000470c4fd (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x232/0x1b70 drivers/tty/n_tty.c:2154
3 locks held by kworker/u4:5/8122:
#0: 0000000099423fb5 ((wq_completion)"events_unbound"){+.+.}, at:
__write_once_size include/linux/compiler.h:220 [inline]
#0: 0000000099423fb5 ((wq_completion)"events_unbound"){+.+.}, at:
arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline]
#0: 0000000099423fb5 ((wq_completion)"events_unbound"){+.+.}, at:
atomic64_set include/asm-generic/atomic-instrumented.h:40 [inline]
#0: 0000000099423fb5 ((wq_completion)"events_unbound"){+.+.}, at:
atomic_long_set include/asm-generic/atomic-long.h:59 [inline]
#0: 0000000099423fb5 ((wq_completion)"events_unbound"){+.+.}, at:
set_work_data kernel/workqueue.c:617 [inline]
#0: 0000000099423fb5 ((wq_completion)"events_unbound"){+.+.}, at:
set_work_pool_and_clear_pending kernel/workqueue.c:644 [inline]
#0: 0000000099423fb5 ((wq_completion)"events_unbound"){+.+.}, at:
process_one_work+0x87e/0x1750 kernel/workqueue.c:2124
#1: 0000000024c7a979 ((work_completion)(&buf->work)){+.+.}, at:
process_one_work+0x8b4/0x1750 kernel/workqueue.c:2128
#2: 00000000eae5f5bf (&buf->lock){+.+.}, at: flush_to_ldisc+0x3d/0x390
drivers/tty/tty_buffer.c:500
2 locks held by login/29371:
#0: 000000001124aa93 (&tty->ldisc_sem){++++}, at:
ldsem_down_read+0x33/0x40 drivers/tty/tty_ldsem.c:362
#1: 000000000bf9c955 (&ldata->atomic_read_lock){+.+.}, at:
n_tty_read+0x232/0x1b70 drivers/tty/n_tty.c:2154
2 locks held by syz-executor.4/29914:
=============================================
NMI backtrace for cpu 0
CPU: 0 PID: 1068 Comm: khungtaskd Not tainted 4.19.89-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+0x197/0x210 lib/dump_stack.c:118
nmi_cpu_backtrace.cold+0x63/0xa4 lib/nmi_backtrace.c:101
nmi_trigger_cpumask_backtrace+0x1b0/0x1f8 lib/nmi_backtrace.c:62
arch_trigger_cpumask_backtrace+0x14/0x20 arch/x86/kernel/apic/hw_nmi.c:38
trigger_all_cpu_backtrace include/linux/nmi.h:146 [inline]
check_hung_uninterruptible_tasks kernel/hung_task.c:203 [inline]
watchdog+0x9df/0xee0 kernel/hung_task.c:287
kthread+0x354/0x420 kernel/kthread.c:246
ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:415
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 29914 Comm: syz-executor.4 Not tainted 4.19.89-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS
Google 01/01/2011
RIP: 0010:__lock_acquire+0x351/0x49c0 kernel/locking/lockdep.c:3352
Code: b2 0d 00 00 0f b7 48 20 81 e1 ff 1f 00 00 44 39 d9 75 0f 48 83 bc 24
98 00 00 00 00 0f 85 e3 07 00 00 4c 03 94 24 88 00 00 00 <44> 89 d9 66 81
e1 ff 1f 49 8d 42 20 48 89 c2 48 89 84 24 80 00 00
RSP: 0018:ffff8880785e7410 EFLAGS: 00000086
RAX: ffff888043fd6b90 RBX: 0000000000000000 RCX: 000000000000002c
RDX: 0000000000000000 RSI: 1ffff110087fad76 RDI: ffff888043fd6bb0
RBP: ffff8880785e75e0 R08: 0000000000000000 R09: 0000000000000003
R10: ffff888043fd6bb8 R11: 000000000000002d R12: 0000000000000002
R13: 0000000000000001 R14: ffff888043fd62c0 R15: ffffffff88f97320
FS: 00007f209b75f700(0000) GS:ffff8880ae900000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: ffffffffff600400 CR3: 000000009939f000 CR4: 00000000001406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
lock_acquire+0x16f/0x3f0 kernel/locking/lockdep.c:3903
rcu_lock_acquire include/linux/rcupdate.h:242 [inline]
rcu_read_lock include/linux/rcupdate.h:627 [inline]
cpuacct_charge+0xa7/0x360 kernel/sched/cpuacct.c:347
cgroup_account_cputime include/linux/cgroup.h:766 [inline]
update_curr+0x2d7/0x8a0 kernel/sched/fair.c:829
pick_next_task_fair+0x6bf/0x1580 kernel/sched/fair.c:6698
pick_next_task kernel/sched/core.c:3361 [inline]
__schedule+0x456/0x1dc0 kernel/sched/core.c:3489
schedule+0x92/0x1c0 kernel/sched/core.c:3559
paste_selection+0x2e8/0x443 drivers/tty/vt/selection.c:354
tioclinux+0x133/0x470 drivers/tty/vt/vt.c:3019
vt_ioctl+0x19ab/0x2530 drivers/tty/vt/vt_ioctl.c:364
tty_ioctl+0x7f3/0x1510 drivers/tty/tty_io.c:2669
vfs_ioctl fs/ioctl.c:46 [inline]
file_ioctl fs/ioctl.c:501 [inline]
do_vfs_ioctl+0xd5f/0x1380 fs/ioctl.c:688
ksys_ioctl+0xab/0xd0 fs/ioctl.c:705
__do_sys_ioctl fs/ioctl.c:712 [inline]
__se_sys_ioctl fs/ioctl.c:710 [inline]
__x64_sys_ioctl+0x73/0xb0 fs/ioctl.c:710
do_syscall_64+0xfd/0x620 arch/x86/entry/common.c:293
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x45a909
Code: ad b6 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 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 0f 83 7b b6 fb ff c3 66 2e 0f 1f 84 00 00 00 00
RSP: 002b:00007f209b75ec78 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 000000000045a909
RDX: 0000000020000080 RSI: 000000000000541c RDI: 0000000000000003
RBP: 000000000075bf20 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f209b75f6d4
R13: 00000000004c5ca8 R14: 00000000004dbf60 R15: 00000000ffffffff