syzbot


INFO: task hung in page_cache_ra_unbounded

Status: upstream: reported on 2024/09/24 05:33
Reported-by: syzbot+26340c6e6534ac58946d@syzkaller.appspotmail.com
First crash: 58d, last: 13d
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: task hung in page_cache_ra_unbounded fs mm 2 1071d 1091d 0/28 closed as invalid on 2022/02/08 09:40
upstream INFO: task hung in page_cache_ra_unbounded (2) fs mm C done 3605 11h24m 80d 0/28 upstream: reported C repro on 2024/09/02 00:15
linux-5.15 INFO: task hung in page_cache_ra_unbounded (2) 2 61d 80d 0/3 upstream: reported on 2024/09/01 11:14
linux-5.15 INFO: task hung in page_cache_ra_unbounded 3 238d 300d 0/3 auto-obsoleted due to no activity on 2024/07/06 02:06

Sample crash report:
INFO: task syz.1.3040:17567 blocked for more than 144 seconds.
      Not tainted 6.1.115-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.1.3040      state:D stack:24712 pid:17567 ppid:16955  flags:0x00004004
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5241 [inline]
 __schedule+0x143f/0x4570 kernel/sched/core.c:6558
 schedule+0xbf/0x180 kernel/sched/core.c:6634
 schedule_preempt_disabled+0xf/0x20 kernel/sched/core.c:6693
 rwsem_down_read_slowpath kernel/locking/rwsem.c:1094 [inline]
 __down_read_common kernel/locking/rwsem.c:1261 [inline]
 __down_read kernel/locking/rwsem.c:1274 [inline]
 down_read+0x6ff/0xa30 kernel/locking/rwsem.c:1522
 filemap_invalidate_lock_shared include/linux/fs.h:813 [inline]
 page_cache_ra_unbounded+0xed/0x7b0 mm/readahead.c:226
 do_page_cache_ra mm/readahead.c:300 [inline]
 force_page_cache_ra+0x2a3/0x300 mm/readahead.c:331
 force_page_cache_readahead mm/internal.h:106 [inline]
 generic_fadvise+0x553/0x7b0 mm/fadvise.c:107
 madvise_willneed mm/madvise.c:318 [inline]
 madvise_vma_behavior mm/madvise.c:1017 [inline]
 madvise_walk_vmas mm/madvise.c:1250 [inline]
 do_madvise+0xcc0/0x4470 mm/madvise.c:1429
 __do_sys_madvise mm/madvise.c:1442 [inline]
 __se_sys_madvise mm/madvise.c:1440 [inline]
 __x64_sys_madvise+0xa1/0xb0 mm/madvise.c:1440
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fd4fab7e719
RSP: 002b:00007fd4fba36038 EFLAGS: 00000246 ORIG_RAX: 000000000000001c
RAX: ffffffffffffffda RBX: 00007fd4fad36058 RCX: 00007fd4fab7e719
RDX: 0000000000000003 RSI: 0000000000600003 RDI: 0000000020000000
RBP: 00007fd4fabf139e R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007fd4fad36058 R15: 00007ffeb1ea16d8
 </TASK>

Showing all locks held in the system:
1 lock held by rcu_tasks_kthre/12:
 #0: ffffffff8d32b1d0 (rcu_tasks.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x29/0xe30 kernel/rcu/tasks.h:517
1 lock held by rcu_tasks_trace/13:
 #0: ffffffff8d32b9d0 (rcu_tasks_trace.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x29/0xe30 kernel/rcu/tasks.h:517
1 lock held by khungtaskd/27:
 #0: ffffffff8d32b000 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:350 [inline]
 #0: ffffffff8d32b000 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:791 [inline]
 #0: ffffffff8d32b000 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x51/0x290 kernel/locking/lockdep.c:6510
3 locks held by kworker/u4:2/34:
 #0: ffff888017c79138 ((wq_completion)events_unbound){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #1: ffffc90000ab7d20 ((linkwatch_work).work){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #2: ffffffff8e4fb128 (rtnl_mutex){+.+.}-{3:3}, at: linkwatch_event+0xa/0x50 net/core/link_watch.c:263
2 locks held by kworker/1:2/125:
 #0: ffff888017c72138 ((wq_completion)rcu_gp){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #1: ffffc90002d8fd20 ((work_completion)(&rew->rew_work)){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
1 lock held by dhcpcd/3916:
 #0: ffffffff8e4fb128 (rtnl_mutex){+.+.}-{3:3}, at: devinet_ioctl+0x2a5/0x1ae0 net/ipv4/devinet.c:1081
2 locks held by getty/4005:
 #0: ffff88814cefe098 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x21/0x70 drivers/tty/tty_ldisc.c:244
 #1: ffffc900032462f0 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0x6a7/0x1db0 drivers/tty/n_tty.c:2198
2 locks held by kworker/u4:5/4298:
3 locks held by kworker/0:6/4362:
 #0: ffff8880302d1538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #1: ffffc900044cfd20 ((work_completion)(&(&ifa->dad_work)->work)){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #2: ffffffff8e4fb128 (rtnl_mutex){+.+.}-{3:3}, at: addrconf_dad_work+0xcc/0x16b0 net/ipv6/addrconf.c:4115
7 locks held by kworker/u4:10/4515:
 #0: ffff888017e16938 ((wq_completion)netns){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #1: ffffc900047f7d20 (net_cleanup_work){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #2: ffffffff8e4eedd0 (pernet_ops_rwsem){++++}-{3:3}, at: cleanup_net+0xf1/0xb60 net/core/net_namespace.c:566
 #3: ffffffff8e4fb128 (rtnl_mutex){+.+.}-{3:3}, at: ieee80211_unregister_hw+0x51/0x290 net/mac80211/main.c:1469
 #4: ffff88807c1b07c8 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: wiphy_lock include/net/cfg80211.h:5639 [inline]
 #4: ffff88807c1b07c8 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: cfg80211_netdev_notifier_call+0x4d4/0x1530 net/wireless/core.c:1503
 #5: ffff88803841cd40 (&wdev->mtx){+.+.}-{3:3}, at: wdev_lock net/wireless/core.h:231 [inline]
 #5: ffff88803841cd40 (&wdev->mtx){+.+.}-{3:3}, at: cfg80211_leave net/wireless/core.c:1341 [inline]
 #5: ffff88803841cd40 (&wdev->mtx){+.+.}-{3:3}, at: cfg80211_netdev_notifier_call+0x4e2/0x1530 net/wireless/core.c:1504
 #6: ffffffff8d3305f8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:323 [inline]
 #6: ffffffff8d3305f8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x360/0x930 kernel/rcu/tree_exp.h:962
3 locks held by kworker/1:18/7139:
1 lock held by syz.1.3040/17566:
1 lock held by syz.1.3040/17567:
 #0: ffff888140c893c0 (mapping.invalidate_lock#2){++++}-{3:3}, at: filemap_invalidate_lock_shared include/linux/fs.h:813 [inline]
 #0: ffff888140c893c0 (mapping.invalidate_lock#2){++++}-{3:3}, at: page_cache_ra_unbounded+0xed/0x7b0 mm/readahead.c:226
1 lock held by syz-executor/19522:
 #0: ffffffff8e4fb128 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock net/core/rtnetlink.c:74 [inline]
 #0: ffffffff8e4fb128 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0x7c1/0xff0 net/core/rtnetlink.c:6147
3 locks held by syz.0.3329/19550:
 #0: ffff888070f40210 (&sb->s_type->i_mutex_key#10){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:758 [inline]
 #0: ffff888070f40210 (&sb->s_type->i_mutex_key#10){+.+.}-{3:3}, at: __sock_release net/socket.c:653 [inline]
 #0: ffff888070f40210 (&sb->s_type->i_mutex_key#10){+.+.}-{3:3}, at: sock_close+0x98/0x230 net/socket.c:1400
 #1: ffff888027f74130 (sk_lock-AF_CAN){+.+.}-{0:0}, at: lock_sock include/net/sock.h:1750 [inline]
 #1: ffff888027f74130 (sk_lock-AF_CAN){+.+.}-{0:0}, at: bcm_release+0x1e0/0x870 net/can/bcm.c:1533
 #2: ffffffff8d3305f8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:323 [inline]
 #2: ffffffff8d3305f8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x360/0x930 kernel/rcu/tree_exp.h:962

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

NMI backtrace for cpu 0
CPU: 0 PID: 27 Comm: khungtaskd Not tainted 6.1.115-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
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+0x1ae/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+0xf88/0xfd0 kernel/hung_task.c:377
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 16755 Comm: udevd Not tainted 6.1.115-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
RIP: 0010:stack_trace_consume_entry+0x9b/0x270 kernel/stacktrace.c:93
Code: 45 85 f6 74 22 41 ff ce 41 0f b6 44 15 00 84 c0 0f 85 65 01 00 00 44 89 37 b0 01 e9 95 00 00 00 31 c0 e9 8e 00 00 00 48 89 d8 <48> c1 e8 03 80 3c 10 00 74 26 4c 89 0c 24 48 89 df 49 89 f5 4d 89
RSP: 0018:ffffc90011a970b0 EFLAGS: 00000246
RAX: ffffc90011a971e0 RBX: ffffc90011a971e0 RCX: ffffffff8fdb5000
RDX: dffffc0000000000 RSI: ffffffff81f03473 RDI: ffffc90011a971ec
RBP: ffffc90011a971e8 R08: 000000000000000b R09: ffffc90011a971f0
R10: 0000000000000000 R11: dffffc0000000001 R12: 1ffff92002352e3d
R13: 1ffff92002352e3d R14: 0000000000000000 R15: 1ffff92002352e3e
FS:  00007fe953da9c80(0000) GS:ffff8880b8f00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f8975508ab8 CR3: 0000000073e7d000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <TASK>
 arch_stack_walk+0x101/0x140 arch/x86/kernel/stacktrace.c:27
 stack_trace_save+0x113/0x1c0 kernel/stacktrace.c:122
 kasan_save_stack mm/kasan/common.c:45 [inline]
 kasan_set_track+0x4b/0x70 mm/kasan/common.c:52
 kasan_save_free_info+0x27/0x40 mm/kasan/generic.c:516
 ____kasan_slab_free+0xd6/0x120 mm/kasan/common.c:236
 kasan_slab_free include/linux/kasan.h:177 [inline]
 slab_free_hook mm/slub.c:1724 [inline]
 slab_free_freelist_hook mm/slub.c:1750 [inline]
 slab_free mm/slub.c:3661 [inline]
 __kmem_cache_free+0x25c/0x3c0 mm/slub.c:3674
 tomoyo_realpath_from_path+0x59f/0x5d0 security/tomoyo/realpath.c:286
 tomoyo_get_realpath security/tomoyo/file.c:151 [inline]
 tomoyo_check_open_permission+0x240/0x4c0 security/tomoyo/file.c:771
 security_file_open+0x5f/0xa0 security/security.c:1681
 do_dentry_open+0x308/0x10f0 fs/open.c:869
 do_open fs/namei.c:3626 [inline]
 path_openat+0x2644/0x2e60 fs/namei.c:3783
 do_filp_open+0x230/0x480 fs/namei.c:3810
 do_sys_openat2+0x13b/0x4f0 fs/open.c:1318
 do_sys_open fs/open.c:1334 [inline]
 __do_sys_openat fs/open.c:1350 [inline]
 __se_sys_openat fs/open.c:1345 [inline]
 __x64_sys_openat+0x243/0x290 fs/open.c:1345
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fe9541629a4
Code: 24 20 48 8d 44 24 30 48 89 44 24 28 64 8b 04 25 18 00 00 00 85 c0 75 2c 44 89 e2 48 89 ee bf 9c ff ff ff b8 01 01 00 00 0f 05 <48> 3d 00 f0 ff ff 76 60 48 8b 15 55 a4 0d 00 f7 d8 64 89 02 48 83
RSP: 002b:00007ffd7e731430 EFLAGS: 00000246 ORIG_RAX: 0000000000000101
RAX: ffffffffffffffda RBX: 0000000000000008 RCX: 00007fe9541629a4
RDX: 0000000000080000 RSI: 00007ffd7e731568 RDI: 00000000ffffff9c
RBP: 00007ffd7e731568 R08: 0000000000000008 R09: 0000000000000001
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000080000
R13: 0000556da13b6b42 R14: 0000000000000001 R15: 0000556da13d2160
 </TASK>

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/11/08 00:42 linux-6.1.y 7c15117f9468 867e44df .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: task hung in page_cache_ra_unbounded
2024/11/07 07:17 linux-6.1.y 7c15117f9468 df3dc63b .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: task hung in page_cache_ra_unbounded
2024/09/25 06:12 linux-6.1.y e526b12bf916 5643e0e9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: task hung in page_cache_ra_unbounded
2024/09/24 05:33 linux-6.1.y e526b12bf916 89298aad .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: task hung in page_cache_ra_unbounded
* Struck through repros no longer work on HEAD.