syzbot


INFO: task hung in __sync_dirty_buffer

Status: auto-obsoleted due to no activity on 2023/08/23 09:07
Reported-by: syzbot+8051920e29bc43760bd7@syzkaller.appspotmail.com
First crash: 374d, last: 350d
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.14 INFO: task hung in __sync_dirty_buffer ext4 nilfs2 C error 9 427d 1303d 0/1 upstream: reported C repro on 2020/09/29 05:34
linux-4.19 INFO: task hung in __sync_dirty_buffer ext4 nilfs2 C error 25 416d 1291d 0/1 upstream: reported C repro on 2020/10/11 09:03
linux-5.15 INFO: task hung in __sync_dirty_buffer 10 345d 382d 0/3 auto-obsoleted due to no activity on 2023/08/22 15:19
upstream INFO: task hung in __sync_dirty_buffer ext4 C inconclusive error 832 317d 966d 22/26 fixed on 2023/07/01 16:05

Sample crash report:
INFO: task syz-executor.5:15240 blocked for more than 143 seconds.
      Not tainted 6.1.27-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz-executor.5  state:D stack:23392 pid:15240 ppid:3603   flags:0x00004004
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5241 [inline]
 __schedule+0x132c/0x4330 kernel/sched/core.c:6554
 schedule+0xbf/0x180 kernel/sched/core.c:6630
 io_schedule+0x88/0x100 kernel/sched/core.c:8774
 bit_wait_io+0xe/0xc0 kernel/sched/wait_bit.c:209
 __wait_on_bit_lock+0xb9/0x190 kernel/sched/wait_bit.c:90
 out_of_line_wait_on_bit_lock+0x1d0/0x250 kernel/sched/wait_bit.c:117
 wait_on_bit_lock_io include/linux/wait_bit.h:208 [inline]
 __lock_buffer fs/buffer.c:69 [inline]
 lock_buffer include/linux/buffer_head.h:397 [inline]
 __sync_dirty_buffer+0x11c/0x380 fs/buffer.c:2732
 __ext4_handle_dirty_metadata+0x2a2/0x810 fs/ext4/ext4_jbd2.c:381
 ext4_convert_inline_data_nolock+0xad1/0xda0 fs/ext4/inline.c:1255
 ext4_convert_inline_data+0x4cf/0x610 fs/ext4/inline.c:2066
 ext4_page_mkwrite+0x1e4/0x10d0 fs/ext4/inode.c:6165
 do_page_mkwrite+0x1a1/0x5f0 mm/memory.c:2973
 do_shared_fault mm/memory.c:4628 [inline]
 do_fault mm/memory.c:4696 [inline]
 handle_pte_fault mm/memory.c:4964 [inline]
 __handle_mm_fault mm/memory.c:5106 [inline]
 handle_mm_fault+0x22e8/0x5330 mm/memory.c:5227
 do_user_addr_fault arch/x86/mm/fault.c:1428 [inline]
 handle_page_fault arch/x86/mm/fault.c:1519 [inline]
 exc_page_fault+0x58d/0x790 arch/x86/mm/fault.c:1575
 asm_exc_page_fault+0x22/0x30 arch/x86/include/asm/idtentry.h:570
RIP: 0010:copy_user_short_string+0xd/0x40 arch/x86/lib/copy_user_64.S:233
Code: 74 0a 89 d1 f3 a4 89 c8 0f 01 ca c3 89 d0 0f 01 ca c3 01 ca eb e7 0f 1f 80 00 00 00 00 89 d1 83 e2 07 c1 e9 03 74 12 4c 8b 06 <4c> 89 07 48 8d 76 08 48 8d 7f 08 ff c9 75 ee 21 d2 74 10 89 d1 8a
RSP: 0018:ffffc9000b44fe10 EFLAGS: 00050202
RAX: ffffffff8433d201 RBX: 00007fffffffeff8 RCX: 0000000000000001
RDX: 0000000000000000 RSI: ffffc9000b44fea0 RDI: 00000000200012c0
RBP: ffffc9000b44ff10 R08: 0000000700000006 R09: fffff52001689fd5
R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000008
R13: ffffc9000b44fea0 R14: 00000000200012c0 R15: ffffc9000b44fea0
 copy_user_generic arch/x86/include/asm/uaccess_64.h:37 [inline]
 raw_copy_to_user arch/x86/include/asm/uaccess_64.h:58 [inline]
 _copy_to_user+0xe9/0x130 lib/usercopy.c:41
 copy_to_user include/linux/uaccess.h:169 [inline]
 do_pipe2+0x105/0x300 fs/pipe.c:1012
 __do_sys_pipe fs/pipe.c:1033 [inline]
 __se_sys_pipe fs/pipe.c:1031 [inline]
 __x64_sys_pipe+0x36/0x40 fs/pipe.c:1031
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7fb650c8c169
RSP: 002b:00007fb651a9d168 EFLAGS: 00000246 ORIG_RAX: 0000000000000016
RAX: ffffffffffffffda RBX: 00007fb650dabf80 RCX: 00007fb650c8c169
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 00000000200012c0
RBP: 00007fb650ce7ca1 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffc7d2da60f R14: 00007fb651a9d300 R15: 0000000000022000
 </TASK>

Showing all locks held in the system:
1 lock held by rcu_tasks_kthre/12:
 #0: ffffffff8cf273f0 (rcu_tasks.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x29/0xd20 kernel/rcu/tasks.h:510
1 lock held by rcu_tasks_trace/13:
 #0: ffffffff8cf27bf0 (rcu_tasks_trace.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x29/0xd20 kernel/rcu/tasks.h:510
1 lock held by khungtaskd/28:
 #0: ffffffff8cf27220 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0x0/0x30
2 locks held by getty/3308:
 #0: ffff88807e868098 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x21/0x70 drivers/tty/tty_ldisc.c:244
 #1: ffffc900031262f0 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x6a7/0x1db0 drivers/tty/n_tty.c:2177
1 lock held by syz-executor.0/3584:
 #0: ffff8880b9839dd8 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock_nested+0x26/0x140 kernel/sched/core.c:537
4 locks held by syz-executor.3/3591:
6 locks held by kworker/0:5/3646:
 #0: ffff8880192bd138 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x77a/0x11f0
 #1: ffffc90004577d20 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0x7bd/0x11f0 kernel/workqueue.c:2264
 #2: ffff888144be7190 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:836 [inline]
 #2: ffff888144be7190 (&dev->mutex){....}-{3:3}, at: hub_event+0x20e/0x57b0 drivers/usb/core/hub.c:5683
 #3: ffff888144bfa4f8 (&port_dev->status_lock){+.+.}-{3:3}, at: usb_lock_port drivers/usb/core/hub.c:3105 [inline]
 #3: ffff888144bfa4f8 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_port_connect drivers/usb/core/hub.c:5251 [inline]
 #3: ffff888144bfa4f8 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_port_connect_change drivers/usb/core/hub.c:5499 [inline]
 #3: ffff888144bfa4f8 (&port_dev->status_lock){+.+.}-{3:3}, at: port_event drivers/usb/core/hub.c:5655 [inline]
 #3: ffff888144bfa4f8 (&port_dev->status_lock){+.+.}-{3:3}, at: hub_event+0x2278/0x57b0 drivers/usb/core/hub.c:5737
 #4: ffff888022c99368 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_port_connect drivers/usb/core/hub.c:5252 [inline]
 #4: ffff888022c99368 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_port_connect_change drivers/usb/core/hub.c:5499 [inline]
 #4: ffff888022c99368 (hcd->address0_mutex){+.+.}-{3:3}, at: port_event drivers/usb/core/hub.c:5655 [inline]
 #4: ffff888022c99368 (hcd->address0_mutex){+.+.}-{3:3}, at: hub_event+0x22a1/0x57b0 drivers/usb/core/hub.c:5737
 #5: ffffffff91cf6578 (&obj_hash[i].lock){-.-.}-{2:2}, at: debug_object_activate+0x97/0x690 lib/debugobjects.c:665
2 locks held by kworker/1:11/5305:
 #0: ffff888012466538 ((wq_completion)rcu_gp){+.+.}-{0:0}, at: process_one_work+0x77a/0x11f0
 #1: ffffc9000327fd20 ((work_completion)(&rew->rew_work)){+.+.}-{0:0}, at: process_one_work+0x7bd/0x11f0 kernel/workqueue.c:2264
3 locks held by kworker/u4:0/12259:
4 locks held by syz-executor.5/15240:
 #0: ffff88807745d3d8 (&mm->mmap_lock#2){++++}-{3:3}, at: mmap_read_trylock include/linux/mmap_lock.h:136 [inline]
 #0: ffff88807745d3d8 (&mm->mmap_lock#2){++++}-{3:3}, at: do_user_addr_fault arch/x86/mm/fault.c:1369 [inline]
 #0: ffff88807745d3d8 (&mm->mmap_lock#2){++++}-{3:3}, at: handle_page_fault arch/x86/mm/fault.c:1519 [inline]
 #0: ffff88807745d3d8 (&mm->mmap_lock#2){++++}-{3:3}, at: exc_page_fault+0x182/0x790 arch/x86/mm/fault.c:1575
 #1: ffff8880780c0558 (sb_pagefaults){.+.+}-{0:0}, at: __sb_start_write include/linux/fs.h:1832 [inline]
 #1: ffff8880780c0558 (sb_pagefaults){.+.+}-{0:0}, at: sb_start_pagefault include/linux/fs.h:1936 [inline]
 #1: ffff8880780c0558 (sb_pagefaults){.+.+}-{0:0}, at: ext4_page_mkwrite+0x1ad/0x10d0 fs/ext4/inode.c:6160
 #2: ffff8880833ac1d0 (mapping.invalidate_lock){++++}-{3:3}, at: filemap_invalidate_lock_shared include/linux/fs.h:811 [inline]
 #2: ffff8880833ac1d0 (mapping.invalidate_lock){++++}-{3:3}, at: ext4_page_mkwrite+0x1d7/0x10d0 fs/ext4/inode.c:6163
 #3: ffff8880833abcf8 (&ei->xattr_sem){++++}-{3:3}, at: ext4_write_lock_xattr fs/ext4/xattr.h:155 [inline]
 #3: ffff8880833abcf8 (&ei->xattr_sem){++++}-{3:3}, at: ext4_convert_inline_data+0x3ab/0x610 fs/ext4/inline.c:2064
2 locks held by syz-executor.4/16210:
 #0: ffff88806fc3dc10 (&sb->s_type->i_mutex_key#10){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:756 [inline]
 #0: ffff88806fc3dc10 (&sb->s_type->i_mutex_key#10){+.+.}-{3:3}, at: __sock_release net/socket.c:651 [inline]
 #0: ffff88806fc3dc10 (&sb->s_type->i_mutex_key#10){+.+.}-{3:3}, at: sock_close+0x98/0x230 net/socket.c:1370
 #1: ffffffff8cf2c7f8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:292 [inline]
 #1: ffffffff8cf2c7f8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x3b0/0x8a0 kernel/rcu/tree_exp.h:948

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

NMI backtrace for cpu 0
CPU: 0 PID: 28 Comm: khungtaskd Not tainted 6.1.27-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/14/2023
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x1e3/0x2cb lib/dump_stack.c:106
 nmi_cpu_backtrace+0x4e1/0x560 lib/nmi_backtrace.c:111
 nmi_trigger_cpumask_backtrace+0x1b0/0x3f0 lib/nmi_backtrace.c:62
 trigger_all_cpu_backtrace include/linux/nmi.h:148 [inline]
 check_hung_uninterruptible_tasks kernel/hung_task.c:220 [inline]
 watchdog+0xf18/0xf60 kernel/hung_task.c:377
 kthread+0x26e/0x300 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
 </TASK>
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 7086 Comm: kworker/u4:46 Not tainted 6.1.27-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/14/2023
Workqueue: bat_events batadv_nc_worker
RIP: 0010:kasan_check_range+0x3/0x290 mm/kasan/generic.c:188
Code: 48 89 c7 e8 1f 2c a2 08 31 c0 c3 0f 0b b8 ea ff ff ff c3 0f 0b b8 ea ff ff ff c3 cc cc cc cc cc cc cc cc cc cc cc cc 55 41 57 <41> 56 53 b0 01 48 85 f6 0f 84 9a 01 00 00 48 89 fd 48 01 f5 0f 82
RSP: 0018:ffffc90007b27988 EFLAGS: 00000046
RAX: 0000000000000000 RBX: 000000000000002a RCX: ffffffff8169e00f
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff90282220
RBP: ffff88807df627e0 R08: dffffc0000000000 R09: fffffbfff2050445
R10: 0000000000000000 R11: dffffc0000000001 R12: ffff88807df62788
R13: ffff88807df61d40 R14: ffff88807df62800 R15: 1ffff1100fbec500
FS:  0000000000000000(0000) GS:ffff8880b9900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ff748985998 CR3: 000000000cc8e000 CR4: 00000000003506e0
Call Trace:
 <TASK>
 instrument_atomic_read include/linux/instrumented.h:72 [inline]
 _test_bit include/asm-generic/bitops/instrumented-non-atomic.h:141 [inline]
 __lock_acquire+0xcbf/0x1f80 kernel/locking/lockdep.c:5026
 lock_acquire+0x1f8/0x5a0 kernel/locking/lockdep.c:5669
 rcu_lock_acquire+0x2a/0x30 include/linux/rcupdate.h:306
 rcu_read_lock include/linux/rcupdate.h:747 [inline]
 batadv_nc_purge_orig_hash net/batman-adv/network-coding.c:408 [inline]
 batadv_nc_worker+0xc1/0x5b0 net/batman-adv/network-coding.c:719
 process_one_work+0x8aa/0x11f0 kernel/workqueue.c:2289
 worker_thread+0xa5f/0x1210 kernel/workqueue.c:2436
 kthread+0x26e/0x300 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
 </TASK>

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2023/05/10 00:07 linux-6.1.y ca48fc16c493 30aa2a7e .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: task hung in __sync_dirty_buffer
2023/04/16 20:27 linux-6.1.y 0102425ac76b ec410564 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: task hung in __sync_dirty_buffer
* Struck through repros no longer work on HEAD.