syzbot


INFO: task hung in flush_delayed_work

Status: upstream: reported on 2024/08/29 07:17
Reported-by: syzbot+2a14f188703ac6797a53@syzkaller.appspotmail.com
First crash: 48d, last: 48d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: task hung in flush_delayed_work fs 92 5h28m 7d09h 0/28 moderation: reported on 2024/10/08 23:21

Sample crash report:
INFO: task syz-executor:4021 blocked for more than 144 seconds.
      Not tainted 5.15.165-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz-executor    state:D stack:    0 pid: 4021 ppid:     1 flags:0x00000001
Call trace:
 __switch_to+0x308/0x5e8 arch/arm64/kernel/process.c:518
 context_switch kernel/sched/core.c:5027 [inline]
 __schedule+0xf10/0x1e48 kernel/sched/core.c:6373
 schedule+0x11c/0x1c8 kernel/sched/core.c:6456
 schedule_timeout+0xb8/0x344 kernel/time/timer.c:1890
 do_wait_for_common+0x214/0x388 kernel/sched/completion.c:85
 __wait_for_common kernel/sched/completion.c:106 [inline]
 wait_for_common kernel/sched/completion.c:117 [inline]
 wait_for_completion+0x4c/0x64 kernel/sched/completion.c:138
 __flush_work+0x12c/0x1c0 kernel/workqueue.c:3094
 flush_work kernel/workqueue.c:3115 [inline]
 flush_delayed_work+0xe4/0x110 kernel/workqueue.c:3239
 invalidate_dquots fs/quota/dquot.c:578 [inline]
 dquot_disable+0x63c/0x1800 fs/quota/dquot.c:2300
 dquot_quota_off+0x2c/0x3c fs/quota/dquot.c:2352
 ext4_quota_off+0xcc/0x424 fs/ext4/super.c:6467
 ext4_quota_off_umount fs/ext4/super.c:1151 [inline]
 ext4_put_super+0x90/0xed4 fs/ext4/super.c:1193
 generic_shutdown_super+0x130/0x29c fs/super.c:475
 kill_block_super+0x70/0xdc fs/super.c:1425
 deactivate_locked_super+0xb8/0x13c fs/super.c:335
 deactivate_super+0x108/0x128 fs/super.c:366
 cleanup_mnt+0x3c0/0x474 fs/namespace.c:1143
 __cleanup_mnt+0x20/0x30 fs/namespace.c:1150
 task_work_run+0x130/0x1e4 kernel/task_work.c:188
 tracehook_notify_resume include/linux/tracehook.h:189 [inline]
 do_notify_resume+0x262c/0x32b8 arch/arm64/kernel/signal.c:946
 prepare_exit_to_user_mode arch/arm64/kernel/entry-common.c:133 [inline]
 exit_to_user_mode arch/arm64/kernel/entry-common.c:138 [inline]
 el0_svc+0xfc/0x1f0 arch/arm64/kernel/entry-common.c:609
 el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:626
 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
INFO: task kworker/u4:9:4275 blocked for more than 144 seconds.
      Not tainted 5.15.165-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:kworker/u4:9    state:D stack:    0 pid: 4275 ppid:     2 flags:0x00000008
Workqueue: events_unbound quota_release_workfn
Call trace:
 __switch_to+0x308/0x5e8 arch/arm64/kernel/process.c:518
 context_switch kernel/sched/core.c:5027 [inline]
 __schedule+0xf10/0x1e48 kernel/sched/core.c:6373
 schedule+0x11c/0x1c8 kernel/sched/core.c:6456
 schedule_timeout+0xb8/0x344 kernel/time/timer.c:1890
 do_wait_for_common+0x214/0x388 kernel/sched/completion.c:85
 __wait_for_common kernel/sched/completion.c:106 [inline]
 wait_for_common kernel/sched/completion.c:117 [inline]
 wait_for_completion+0x4c/0x64 kernel/sched/completion.c:138
 __synchronize_srcu+0x298/0x340 kernel/rcu/srcutree.c:930
 synchronize_srcu+0x19c/0x1b4
 quota_release_workfn+0x12c/0x6a0 fs/quota/dquot.c:826
 process_one_work+0x790/0x11b8 kernel/workqueue.c:2310
 worker_thread+0x910/0x1034 kernel/workqueue.c:2457
 kthread+0x37c/0x45c kernel/kthread.c:334
 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:870
INFO: task syz.0.72:4382 blocked for more than 144 seconds.
      Not tainted 5.15.165-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.0.72        state:D stack:    0 pid: 4382 ppid:  4023 flags:0x00000001
Call trace:
 __switch_to+0x308/0x5e8 arch/arm64/kernel/process.c:518
 context_switch kernel/sched/core.c:5027 [inline]
 __schedule+0xf10/0x1e48 kernel/sched/core.c:6373
 schedule+0x11c/0x1c8 kernel/sched/core.c:6456
 io_schedule+0x8c/0x194 kernel/sched/core.c:8481
 bit_wait_io+0x1c/0xac kernel/sched/wait_bit.c:209
 __wait_on_bit_lock+0xcc/0x1f0 kernel/sched/wait_bit.c:90
 out_of_line_wait_on_bit_lock+0x194/0x21c kernel/sched/wait_bit.c:117
 wait_on_bit_lock_io include/linux/wait_bit.h:208 [inline]
 __lock_buffer+0x80/0xc0 fs/buffer.c:69
 lock_buffer include/linux/buffer_head.h:402 [inline]
 ext4_quota_write+0x378/0x564 fs/ext4/super.c:6581
 qtree_write_dquot+0x1dc/0x488 fs/quota/quota_tree.c:422
 v2_write_dquot+0xf4/0x188 fs/quota/quota_v2.c:358
 dquot_commit+0x14c/0x240 fs/quota/dquot.c:514
 ext4_write_dquot+0x1b4/0x314 fs/ext4/super.c:6172
 ext4_mark_dquot_dirty+0xe8/0x140 fs/ext4/super.c:6232
 mark_dquot_dirty fs/quota/dquot.c:372 [inline]
 mark_all_dquot_dirty+0x108/0x424 fs/quota/dquot.c:412
 __dquot_free_space+0x878/0xce8 fs/quota/dquot.c:1941
 dquot_free_space_nodirty include/linux/quotaops.h:376 [inline]
 ext4_xattr_inode_free_quota+0x11c/0x188 fs/ext4/xattr.c:899
 ext4_xattr_set_entry+0xcc0/0x3118 fs/ext4/xattr.c:1705
 ext4_xattr_block_set+0x55c/0x2dcc fs/ext4/xattr.c:1926
 ext4_xattr_set_handle+0xcc8/0x12d8 fs/ext4/xattr.c:2386
 ext4_xattr_set+0x1dc/0x350 fs/ext4/xattr.c:2513
 ext4_xattr_trusted_set+0x4c/0x64 fs/ext4/xattr_trusted.c:38
 __vfs_removexattr+0x370/0x38c fs/xattr.c:470
 __vfs_removexattr_locked+0x1d8/0x380 fs/xattr.c:505
 vfs_removexattr+0xe0/0x23c fs/xattr.c:527
 removexattr fs/xattr.c:857 [inline]
 path_removexattr+0x1ec/0x2ec fs/xattr.c:871
 __do_sys_removexattr fs/xattr.c:885 [inline]
 __se_sys_removexattr fs/xattr.c:882 [inline]
 __arm64_sys_removexattr+0x60/0x78 fs/xattr.c:882
 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
 invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52
 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
 do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181
 el0_svc+0x7c/0x1f0 arch/arm64/kernel/entry-common.c:608
 el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:626
 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584
INFO: task syz.2.76:4420 blocked for more than 144 seconds.
      Not tainted 5.15.165-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.2.76        state:D stack:    0 pid: 4420 ppid:  4029 flags:0x04000001
Call trace:
 __switch_to+0x308/0x5e8 arch/arm64/kernel/process.c:518
 context_switch kernel/sched/core.c:5027 [inline]
 __schedule+0xf10/0x1e48 kernel/sched/core.c:6373
 schedule+0x11c/0x1c8 kernel/sched/core.c:6456
 io_schedule+0x8c/0x194 kernel/sched/core.c:8481
 bit_wait_io+0x1c/0xac kernel/sched/wait_bit.c:209
 __wait_on_bit_lock+0xcc/0x1f0 kernel/sched/wait_bit.c:90
 out_of_line_wait_on_bit_lock+0x194/0x21c kernel/sched/wait_bit.c:117
 wait_on_bit_lock_io include/linux/wait_bit.h:208 [inline]
 __lock_buffer+0x80/0xc0 fs/buffer.c:69
 lock_buffer include/linux/buffer_head.h:402 [inline]
 ext4_quota_write+0x378/0x564 fs/ext4/super.c:6581
 qtree_write_dquot+0x1dc/0x488 fs/quota/quota_tree.c:422
 v2_write_dquot+0xf4/0x188 fs/quota/quota_v2.c:358
 dquot_commit+0x14c/0x240 fs/quota/dquot.c:514
 ext4_write_dquot+0x1b4/0x314 fs/ext4/super.c:6172
 ext4_mark_dquot_dirty+0xe8/0x140 fs/ext4/super.c:6232
 mark_dquot_dirty fs/quota/dquot.c:372 [inline]
 mark_all_dquot_dirty+0x108/0x424 fs/quota/dquot.c:412
 __dquot_free_space+0x878/0xce8 fs/quota/dquot.c:1941
 dquot_free_space_nodirty include/linux/quotaops.h:376 [inline]
 ext4_xattr_inode_free_quota+0x11c/0x188 fs/ext4/xattr.c:899
 ext4_xattr_set_entry+0xcc0/0x3118 fs/ext4/xattr.c:1705
 ext4_xattr_block_set+0x55c/0x2dcc fs/ext4/xattr.c:1926
 ext4_xattr_set_handle+0xcc8/0x12d8 fs/ext4/xattr.c:2386
 ext4_xattr_set+0x1dc/0x350 fs/ext4/xattr.c:2513
 ext4_xattr_trusted_set+0x4c/0x64 fs/ext4/xattr_trusted.c:38
 __vfs_removexattr+0x370/0x38c fs/xattr.c:470
 __vfs_removexattr_locked+0x1d8/0x380 fs/xattr.c:505
 vfs_removexattr+0xe0/0x23c fs/xattr.c:527
 removexattr fs/xattr.c:857 [inline]
 path_removexattr+0x1ec/0x2ec fs/xattr.c:871
 __do_sys_removexattr fs/xattr.c:885 [inline]
 __se_sys_removexattr fs/xattr.c:882 [inline]
 __arm64_sys_removexattr+0x60/0x78 fs/xattr.c:882
 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
 invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:52
 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:142
 do_el0_svc+0x58/0x14c arch/arm64/kernel/syscall.c:181
 el0_svc+0x7c/0x1f0 arch/arm64/kernel/entry-common.c:608
 el0t_64_sync_handler+0x84/0xe4 arch/arm64/kernel/entry-common.c:626
 el0t_64_sync+0x1a0/0x1a4 arch/arm64/kernel/entry.S:584

Showing all locks held in the system:
1 lock held by khungtaskd/27:
 #0: ffff800014c917a0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire+0xc/0x44 include/linux/rcupdate.h:311
4 locks held by kworker/u4:1/136:
 #0: ffff0000c03f4138 ((wq_completion)netns){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff80001a567c00 (net_cleanup_work){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285
 #2: ffff800016be8f90 (pernet_ops_rwsem){++++}-{3:3}, at: cleanup_net+0xf4/0x9bc net/core/net_namespace.c:561
 #3: ffff800016bf4768 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock+0x20/0x2c net/core/rtnetlink.c:72
3 locks held by kworker/u4:5/555:
 #0: ffff0000c0029138 ((wq_completion)events_unbound){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff80001d9d7c00 ((linkwatch_work).work){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285
 #2: ffff800016bf4768 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock+0x20/0x2c net/core/rtnetlink.c:72
2 locks held by kworker/0:2/1534:
 #0: ffff0000c0020938 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff800020f57c00 (key_gc_work){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285
3 locks held by kworker/1:2/1960:
 #0: ffff0000c0020938 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff800022777c00 (deferred_process_work){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285
 #2: ffff800016bf4768 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock+0x20/0x2c net/core/rtnetlink.c:72
2 locks held by getty/3785:
 #0: ffff0000d321c098 (&tty->ldisc_sem){++++}-{0:0}, at: ldsem_down_read+0x40/0x50 drivers/tty/tty_ldsem.c:340
 #1: ffff80001a4de2e8 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x414/0x1204 drivers/tty/n_tty.c:2158
1 lock held by syz-executor/4021:
 #0: ffff0000d98d40e0 (&type->s_umount_key#30){++++}-{3:3}, at: deactivate_super+0x100/0x128 fs/super.c:365
3 locks held by kworker/u5:2/4027:
 #0: ffff0000c18fc938 ((wq_completion)hci7){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff80001cf37c00 ((work_completion)(&hdev->power_on)){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285
 #2: ffff0000d20b4ff0 (&hdev->req_lock){+.+.}-{3:3}, at: hci_dev_do_open+0xb8/0x104c net/bluetooth/hci_core.c:1446
3 locks held by kworker/u5:3/4030:
 #0: ffff0000d2028138 ((wq_completion)hci6){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff80001cf77c00 ((work_completion)(&hdev->error_reset)){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285
 #2: ffff0000daa60ff0 (&hdev->req_lock){+.+.}-{3:3}, at: hci_dev_do_open+0xb8/0x104c net/bluetooth/hci_core.c:1446
3 locks held by kworker/0:9/4102:
 #0: ffff0000d29ccd38 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff80001d447c00 ((work_completion)(&(&ifa->dad_work)->work)){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285
 #2: ffff800016bf4768 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock+0x20/0x2c net/core/rtnetlink.c:72
2 locks held by kworker/u4:8/4157:
2 locks held by kworker/u4:9/4275:
 #0: ffff0000c0029138 ((wq_completion)events_unbound){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff80001d567c00 ((quota_release_work).work){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285
6 locks held by syz.0.72/4382:
 #0: ffff0000c2c30460 (sb_writers#3){.+.+}-{0:0}, at: mnt_want_write+0x44/0x9c fs/namespace.c:377
 #1: ffff0000e600e7a0 (&type->i_mutex_dir_key#3){++++}-{3:3}, at: inode_lock include/linux/fs.h:789 [inline]
 #1: ffff0000e600e7a0 (&type->i_mutex_dir_key#3){++++}-{3:3}, at: vfs_removexattr+0xcc/0x23c fs/xattr.c:526
 #2: ffff0000e600e478 (&ei->xattr_sem){++++}-{3:3}, at: ext4_write_lock_xattr fs/ext4/xattr.h:155 [inline]
 #2: ffff0000e600e478 (&ei->xattr_sem){++++}-{3:3}, at: ext4_xattr_set_handle+0x1e0/0x12d8 fs/ext4/xattr.c:2327
 #3: ffff800014da8df8 (dquot_srcu){....}-{0:0}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:311
 #4: ffff0000e6306268 (&dquot->dq_lock){+.+.}-{3:3}, at: dquot_commit+0x54/0x240 fs/quota/dquot.c:507
 #5: ffff0000c2c30208 (&s->s_dquot.dqio_sem){++++}-{3:3}, at: v2_write_dquot+0x84/0x188 fs/quota/quota_v2.c:356
6 locks held by syz.2.76/4420:
 #0: ffff0000d0820460 (sb_writers#3){.+.+}-{0:0}, at: mnt_want_write+0x44/0x9c fs/namespace.c:377
 #1: ffff0000ddecc9b8 (&type->i_mutex_dir_key#3){++++}-{3:3}, at: inode_lock include/linux/fs.h:789 [inline]
 #1: ffff0000ddecc9b8 (&type->i_mutex_dir_key#3){++++}-{3:3}, at: vfs_removexattr+0xcc/0x23c fs/xattr.c:526
 #2: ffff0000ddecc690 (&ei->xattr_sem){++++}-{3:3}, at: ext4_write_lock_xattr fs/ext4/xattr.h:155 [inline]
 #2: ffff0000ddecc690 (&ei->xattr_sem){++++}-{3:3}, at: ext4_xattr_set_handle+0x1e0/0x12d8 fs/ext4/xattr.c:2327
 #3: ffff800014da8df8 (dquot_srcu){....}-{0:0}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:311
 #4: ffff0000e6138428 (&dquot->dq_lock){+.+.}-{3:3}, at: dquot_commit+0x54/0x240 fs/quota/dquot.c:507
 #5: ffff0000d0820208 (&s->s_dquot.dqio_sem){++++}-{3:3}, at: v2_write_dquot+0x84/0x188 fs/quota/quota_v2.c:356
1 lock held by syz-executor/4967:
 #0: ffff0000ee2600e0 (&type->s_umount_key#30){++++}-{3:3}, at: deactivate_super+0x100/0x128 fs/super.c:365
1 lock held by syz-executor/5120:
 #0: ffff0000d76f60e0 (&type->s_umount_key#30){++++}-{3:3}, at: deactivate_super+0x100/0x128 fs/super.c:365
3 locks held by kworker/0:11/5591:
6 locks held by syz-executor/6076:
 #0: ffff0000d4b76460 (sb_writers#7){.+.+}-{0:0}, at: vfs_write+0x228/0xb44 fs/read_write.c:590
 #1: ffff0000c0ba7c88 (&of->mutex){+.+.}-{3:3}, at: kernfs_fop_write_iter+0x1c8/0x48c fs/kernfs/file.c:287
 #2: ffff0000cea3fa00 (kn->active#231){.+.+}-{0:0}, at: kernfs_fop_write_iter+0x1e4/0x48c fs/kernfs/file.c:288
 #3: ffff8000161c2c68 (nsim_bus_dev_list_lock){+.+.}-{3:3}, at: new_device_store+0x170/0x70c drivers/net/netdevsim/bus.c:295
 #4: ffff0000d735c178 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:760 [inline]
 #4: ffff0000d735c178 (&dev->mutex){....}-{3:3}, at: __device_attach+0x90/0x480 drivers/base/dd.c:954
 #5: ffff800016bf4768 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock+0x20/0x2c net/core/rtnetlink.c:72
1 lock held by syz-executor/6205:
 #0: ffff800016bf4768 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock net/core/rtnetlink.c:72 [inline]
 #0: ffff800016bf4768 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0xa2c/0xdac net/core/rtnetlink.c:5615
2 locks held by syz.3.534/6240:
 #0: ffff0000e8bdb098 (&tty->ldisc_sem){++++}-{0:0}, at: ldsem_down_write+0x40/0x50 drivers/tty/tty_ldsem.c:366
 #1: ffff0000f5aba098 (&tty->ldisc_sem/1){+.+.}-{0:0}, at: ldsem_down_write_nested+0x48/0x5c drivers/tty/tty_ldsem.c:427
2 locks held by kworker/1:10/6248:
 #0: ffff0000c0021938 ((wq_completion)rcu_gp){+.+.}-{0:0}, at: process_one_work+0x66c/0x11b8 kernel/workqueue.c:2283
 #1: ffff80001dbc7c00 ((work_completion)(&rew.rew_work)){+.+.}-{0:0}, at: process_one_work+0x6ac/0x11b8 kernel/workqueue.c:2285

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


Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/08/29 07:16 linux-5.15.y fa93fa65db6e ef3de9e8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan-arm64 INFO: task hung in flush_delayed_work
* Struck through repros no longer work on HEAD.