INFO: task hung in __sync_dirty_buffer

8 views
Skip to first unread message

syzbot

unread,
Oct 11, 2020, 5:03:22 AM10/11/20
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: a1b977b4 Linux 4.19.150
git tree: linux-4.19.y
console output: https://syzkaller.appspot.com/x/log.txt?x=1644474f900000
kernel config: https://syzkaller.appspot.com/x/.config?x=c14008c8da1ca4d4
dashboard link: https://syzkaller.appspot.com/bug?extid=d0c2e06c668c2060c48f
compiler: gcc (GCC) 10.1.0-syz 20200507
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1531031b900000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=104937fb900000

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+d0c2e0...@syzkaller.appspotmail.com

audit: type=1400 audit(1602406706.189:8): avc: denied { execmem } for pid=6491 comm="syz-executor140" scontext=system_u:system_r:kernel_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=process permissive=1
EXT4-fs (loop0): mounted filesystem without journal. Opts: ,errors=continue
INFO: task syz-executor140:6492 blocked for more than 140 seconds.
Not tainted 4.19.150-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
syz-executor140 D26152 6492 6491 0x00000004
Call Trace:
context_switch kernel/sched/core.c:2828 [inline]
__schedule+0x8e5/0x22e0 kernel/sched/core.c:3517
schedule+0x8d/0x1b0 kernel/sched/core.c:3561
io_schedule+0xb5/0x120 kernel/sched/core.c:5185
bit_wait_io+0x12/0x90 kernel/sched/wait_bit.c:207
__wait_on_bit_lock+0xb5/0x170 kernel/sched/wait_bit.c:89
out_of_line_wait_on_bit_lock+0xd2/0x100 kernel/sched/wait_bit.c:116
wait_on_bit_lock_io include/linux/wait_bit.h:208 [inline]
__lock_buffer+0x52/0x60 fs/buffer.c:65
lock_buffer include/linux/buffer_head.h:374 [inline]
__sync_dirty_buffer+0x2a6/0x320 fs/buffer.c:3194
__ext4_handle_dirty_metadata+0x234/0x650 fs/ext4/ext4_jbd2.c:300
ext4_convert_inline_data_nolock+0x5c9/0xd30 fs/ext4/inline.c:1240
ext4_convert_inline_data+0x347/0x39d fs/ext4/inline.c:2026
ext4_fallocate+0x13b/0x2130 fs/ext4/extents.c:4960
vfs_fallocate+0x487/0x9a0 fs/open.c:308
ksys_fallocate fs/open.c:331 [inline]
__do_sys_fallocate fs/open.c:339 [inline]
__se_sys_fallocate fs/open.c:337 [inline]
__x64_sys_fallocate+0xcf/0x140 fs/open.c:337
do_syscall_64+0xf9/0x670 arch/x86/entry/common.c:293
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x445489
Code: Bad RIP value.
RSP: 002b:00007ffc17228468 EFLAGS: 00000246 ORIG_RAX: 000000000000011d
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 0000000000445489
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000003
RBP: 00000000006d1018 R08: 0000000000000001 R09: 0000000000000001
R10: 000000000000ffe0 R11: 0000000000000246 R12: 00000000004025f0
R13: 0000000000402680 R14: 0000000000000000 R15: 0000000000000000

Showing all locks held in the system:
1 lock held by khungtaskd/1094:
#0: 000000008dc44be5 (rcu_read_lock){....}, at: debug_show_all_locks+0x53/0x291 kernel/locking/lockdep.c:4440
1 lock held by in:imklog/6231:
#0: 000000003312ed9f (&f->f_pos_lock){+.+.}, at: __fdget_pos+0xe3/0x100 fs/file.c:767
2 locks held by syz-executor140/6492:
#0: 000000006bc7431b (sb_writers#3){.+.+}, at: file_start_write include/linux/fs.h:2780 [inline]
#0: 000000006bc7431b (sb_writers#3){.+.+}, at: vfs_fallocate+0x7c0/0x9a0 fs/open.c:307
#1: 00000000a4d6796d (&ei->xattr_sem){++++}, at: ext4_write_lock_xattr fs/ext4/xattr.h:141 [inline]
#1: 00000000a4d6796d (&ei->xattr_sem){++++}, at: ext4_convert_inline_data+0x20a/0x39d fs/ext4/inline.c:2024

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

NMI backtrace for cpu 1
CPU: 1 PID: 1094 Comm: khungtaskd Not tainted 4.19.150-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+0x22c/0x33e lib/dump_stack.c:118
nmi_cpu_backtrace.cold+0x18/0x3d 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+0xa62/0x1020 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: 55 Comm: kworker/u4:2 Not tainted 4.19.150-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: writeback wb_workfn (flush-7:0)
RIP: 0010:__lock_acquire+0x1b9/0x3ff0 kernel/locking/lockdep.c:3321
Code: c0 0f 84 14 04 00 00 49 8d b8 38 01 00 00 be 04 00 00 00 4c 89 44 24 18 e8 c4 6b 53 00 4c 8b 44 24 18 f0 41 ff 80 38 01 00 00 <49> 8d 86 80 08 00 00 48 ba 00 00 00 00 00 fc ff df 48 89 c1 48 89
RSP: 0018:ffff8880a9197170 EFLAGS: 00000006
RAX: fffffbfff19c5dea RBX: 0000000000000000 RCX: ffffffff8157a06c
RDX: fffffbfff19c5dea RSI: 0000000000000004 RDI: ffffffff8ce2ef48
RBP: 0000000000000000 R08: ffffffff8ce2ee10 R09: fffffbfff19c5de9
R10: ffffffff8ce2ef4b R11: 0000000000000003 R12: 0000000000000001
R13: 0000000000000000 R14: ffff8880a917e700 R15: ffff8880a2d91580
FS: 0000000000000000(0000) GS:ffff8880ae200000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00000000006d2080 CR3: 0000000084930000 CR4: 00000000001406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
lock_acquire+0x170/0x3f0 kernel/locking/lockdep.c:3907
__raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
_raw_spin_lock_irqsave+0x90/0xe0 kernel/locking/spinlock.c:152
__set_page_dirty_nobuffers+0x109/0x690 mm/page-writeback.c:2474
redirty_page_for_writepage+0x37/0x60 mm/page-writeback.c:2529
__block_write_full_page+0x7b0/0xff0 fs/buffer.c:1757
block_write_full_page+0x202/0x270 fs/buffer.c:2967
__writepage+0x5e/0xe0 mm/page-writeback.c:2305
write_cache_pages+0x83b/0x13d0 mm/page-writeback.c:2240
generic_writepages mm/page-writeback.c:2329 [inline]
generic_writepages+0xdb/0x150 mm/page-writeback.c:2318
do_writepages+0xe5/0x290 mm/page-writeback.c:2344
__writeback_single_inode+0x113/0x13e0 fs/fs-writeback.c:1382
writeback_sb_inodes+0x537/0xf10 fs/fs-writeback.c:1646
__writeback_inodes_wb+0xc6/0x280 fs/fs-writeback.c:1715
wb_writeback+0x841/0xd20 fs/fs-writeback.c:1821
wb_check_old_data_flush fs/fs-writeback.c:1923 [inline]
wb_do_writeback fs/fs-writeback.c:1976 [inline]
wb_workfn+0x924/0x1230 fs/fs-writeback.c:2005
process_one_work+0x796/0x14e0 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


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
syzbot can test patches for this issue, for details see:
https://goo.gl/tpsmEJ#testing-patches
Reply all
Reply to author
Forward
0 new messages