syzbot


INFO: task hung in exit_mmap

Status: upstream: reported on 2024/08/15 18:13
Reported-by: syzbot+fba98eb02bf6bb1f4c4c@syzkaller.appspotmail.com
First crash: 43d, last: 43d

Sample crash report:
INFO: task syz.1.51:3866 blocked for more than 143 seconds.
      Not tainted 6.1.105-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.1.51        state:D stack:23872 pid:3866  ppid:3633   flags:0x00004000
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
 rwsem_down_write_slowpath+0xea1/0x14b0 kernel/locking/rwsem.c:1189
 mmap_write_lock include/linux/mmap_lock.h:71 [inline]
 exit_mmap+0x29a/0x9f0 mm/mmap.c:3235
 __mmput+0x115/0x3c0 kernel/fork.c:1199
 exit_mm+0x226/0x300 kernel/exit.c:565
 do_exit+0x9f6/0x26a0 kernel/exit.c:858
 do_group_exit+0x202/0x2b0 kernel/exit.c:1021
 get_signal+0x16f7/0x17d0 kernel/signal.c:2870
 arch_do_signal_or_restart+0xb0/0x1a10 arch/x86/kernel/signal.c:871
 exit_to_user_mode_loop+0x6a/0x100 kernel/entry/common.c:174
 exit_to_user_mode_prepare+0xb1/0x140 kernel/entry/common.c:210
 __syscall_exit_to_user_mode_work kernel/entry/common.c:292 [inline]
 syscall_exit_to_user_mode+0x60/0x270 kernel/entry/common.c:303
 do_syscall_64+0x47/0xb0 arch/x86/entry/common.c:87
 entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f042c1799b9
RSP: 002b:00007f042ce990e8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: fffffffffffffe00 RBX: 00007f042c315f88 RCX: 00007f042c1799b9
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f042c315f88
RBP: 00007f042c315f80 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f042c315f8c
R13: 0000000000000000 R14: 00007ffd24553e70 R15: 00007ffd24553f58
 </TASK>
INFO: task syz.2.48:3862 blocked for more than 144 seconds.
      Not tainted 6.1.105-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz.2.48        state:D
 stack:25408 pid:3862  ppid:3644   flags:0x00004000
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
 rwsem_down_write_slowpath+0xea1/0x14b0 kernel/locking/rwsem.c:1189
 mmap_write_lock include/linux/mmap_lock.h:71 [inline]
 exit_mmap+0x29a/0x9f0 mm/mmap.c:3235
 __mmput+0x115/0x3c0 kernel/fork.c:1199
 exit_mm+0x226/0x300 kernel/exit.c:565
 do_exit+0x9f6/0x26a0 kernel/exit.c:858
 do_group_exit+0x202/0x2b0 kernel/exit.c:1021
 __do_sys_exit_group kernel/exit.c:1032 [inline]
 __se_sys_exit_group kernel/exit.c:1030 [inline]
 __x64_sys_exit_group+0x3b/0x40 kernel/exit.c:1030
 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:0x7fe4d8f799b9
RSP: 002b:00007ffc23bb5558 EFLAGS: 00000246 ORIG_RAX: 00000000000000e7
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fe4d8f799b9
RDX: 0000000000000064 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 00007ffc23bb55ac R08: 00007ffc23bb563f R09: 00000000000100ae
R10: 0000000000000001 R11: 0000000000000246 R12: 0000000000000032
R13: 00000000000100ae R14: 0000000000010076 R15: 00007ffc23bb5600
 </TASK>

Showing all locks held in the system:
1 lock held by rcu_tasks_kthre/12:
 #0: ffffffff8d32b190 (rcu_tasks.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x29/0xe30 kernel/rcu/tasks.h:516
1 lock held by rcu_tasks_trace/13:
 #0: ffffffff8d32b990 (rcu_tasks_trace.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x29/0xe30 kernel/rcu/tasks.h:516
1 lock held by khungtaskd/27:
 #0: ffffffff8d32afc0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:350 [inline]
 #0: ffffffff8d32afc0 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:791 [inline]
 #0: ffffffff8d32afc0 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x51/0x290 kernel/locking/lockdep.c:6494
3 locks held by syslogd/3073:
 #0: ffff8880b983a9d8 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock_nested+0xa8/0x140 kernel/sched/core.c:545
 #1: ffff8880b9927788 (&per_cpu_ptr(group->pcpu, cpu)->seq){-.-.}-{0:0}, at: psi_task_switch+0x43d/0x770 kernel/sched/psi.c:1001
 #2: ffff8880b9927788 (&per_cpu_ptr(group->pcpu, cpu)->seq){-.-.}-{0:0}, at: ktime_get_coarse_real_ts64+0x36/0x120 kernel/time/timekeeping.c:2261
2 locks held by getty/3393:
 #0: ffff88807e1e0098 (&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:2198
1 lock held by syz-executor/3634:
 #0: ffff888075d935d8 (&mm->mmap_lock){++++}-{3:3}, at: mmap_write_lock include/linux/mmap_lock.h:71 [inline]
 #0: ffff888075d935d8 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x29a/0x9f0 mm/mmap.c:3235
1 lock held by syz-executor/3641:
 #0: ffffffff8d3305b8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:323 [inline]
 #0: ffffffff8d3305b8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x360/0x930 kernel/rcu/tree_exp.h:962
1 lock held by syz-executor/3643:
 #0: ffff88807d5762d8 (&mm->mmap_lock){++++}-{3:3}, at: mmap_write_lock include/linux/mmap_lock.h:71 [inline]
 #0: ffff88807d5762d8 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x29a/0x9f0 mm/mmap.c:3235
1 lock held by syz-executor/3644:
 #0: ffff888021186a58 (&mm->mmap_lock){++++}-{3:3}, at: mmap_write_lock include/linux/mmap_lock.h:71 [inline]
 #0: ffff888021186a58 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x29a/0x9f0 mm/mmap.c:3235
1 lock held by syz.1.51/3866:
 #0: ffff88807ccac4d8 (&mm->mmap_lock){++++}-{3:3}, at: mmap_write_lock include/linux/mmap_lock.h:71 [inline]
 #0: ffff88807ccac4d8 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x29a/0x9f0 mm/mmap.c:3235
1 lock held by syz.2.48/3862:
 #0: ffff88807ccaf958 (&mm->mmap_lock){++++}-{3:3}, at: mmap_write_lock include/linux/mmap_lock.h:71 [inline]
 #0: ffff88807ccaf958 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x29a/0x9f0 mm/mmap.c:3235
3 locks held by kworker/u4:12/4025:
2 locks held by kworker/1:8/4122:
 #0: ffff888012872138 ((wq_completion)rcu_gp){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #1: ffffc90004eb7d20 ((work_completion)(&rew->rew_work)){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
5 locks held by kworker/1:14/5252:
 #0: ffff888144e9fd38 ((wq_completion)usb_hub_wq){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #1: ffffc90004a77d20 ((work_completion)(&hub->events)){+.+.}-{0:0}, at: process_one_work+0x7a9/0x11d0 kernel/workqueue.c:2267
 #2: ffff8880228be190 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:837 [inline]
 #2: ffff8880228be190 (&dev->mutex){....}-{3:3}, at: hub_event+0x1fe/0x5730 drivers/usb/core/hub.c:5801
 #3: ffff888059a09190 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:837 [inline]
 #3: ffff888059a09190 (&dev->mutex){....}-{3:3}, at: __device_attach+0x8a/0x570 drivers/base/dd.c:990
 #4: ffff88805ceb2118 (&dev->mutex){....}-{3:3}, at: device_lock include/linux/device.h:837 [inline]
 #4: ffff88805ceb2118 (&dev->mutex){....}-{3:3}, at: __device_attach+0x8a/0x570 drivers/base/dd.c:990
4 locks held by udevd/5380:
 #0: ffff888079ad6b08 (&p->lock){+.+.}-{3:3}, at: seq_read_iter+0xae/0xd10 fs/seq_file.c:182
 #1: ffff88805cf2f488 (&of->mutex){+.+.}-{3:3}, at: kernfs_seq_start+0x4f/0x3a0 fs/kernfs/file.c:154
 #2: ffff88807304fa00 (kn->active#30){.+.+}-{0:0}, at: kernfs_seq_start+0x6e/0x3a0 fs/kernfs/file.c:155
 #3: ffff888059a09190 (&dev->mutex){....}-{3:3}, at: device_lock_interruptible include/linux/device.h:842 [inline]
 #3: ffff888059a09190 (&dev->mutex){....}-{3:3}, at: manufacturer_show+0x22/0x90 drivers/usb/core/sysfs.c:141
2 locks held by syz.0.675/5973:
 #0: ffffffff8e4f8368 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock net/core/rtnetlink.c:74 [inline]
 #0: ffffffff8e4f8368 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0x7c1/0xff0 net/core/rtnetlink.c:6118
 #1: ffffffff8d3305b8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:323 [inline]
 #1: ffffffff8d3305b8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x360/0x930 kernel/rcu/tree_exp.h:962

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

NMI backtrace for cpu 1
CPU: 1 PID: 27 Comm: khungtaskd Not tainted 6.1.105-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/27/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+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+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 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 4025 Comm: kworker/u4:12 Not tainted 6.1.105-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/27/2024
Workqueue: phy6 ieee80211_iface_work
RIP: 0010:usage_skip kernel/locking/lockdep.c:2274 [inline]
RIP: 0010:__bfs kernel/locking/lockdep.c:1782 [inline]
RIP: 0010:__bfs_backwards kernel/locking/lockdep.c:1842 [inline]
RIP: 0010:check_irq_usage kernel/locking/lockdep.c:2782 [inline]
RIP: 0010:check_prev_add kernel/locking/lockdep.c:3094 [inline]
RIP: 0010:check_prevs_add kernel/locking/lockdep.c:3209 [inline]
RIP: 0010:validate_chain+0x1bb5/0x5950 kernel/locking/lockdep.c:3825
Code: 4d 8b 3e 49 8d 9f ba 00 00 00 48 89 d8 48 c1 e8 03 48 b9 00 00 00 00 00 fc ff df 0f b6 04 08 84 c0 0f 85 81 02 00 00 80 3b 01 <0f> 85 98 00 00 00 48 b8 00 00 00 00 00 fc ff df 48 8b 4c 24 60 0f
RSP: 0018:ffffc90004807580 EFLAGS: 00000097
RAX: 0000000000000000 RBX: ffffffff9048429a RCX: dffffc0000000000
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffc900048076a0
RBP: ffffc90004807830 R08: dffffc0000000000 R09: fffffbfff20e7463
R10: 0000000000000000 R11: dffffc0000000001 R12: ffffffff91898828
R13: 000000000002029f R14: ffffffff91898838 R15: ffffffff904841e0
FS:  0000000000000000(0000) GS:ffff8880b9800000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffc975dfc88 CR3: 000000000d08e000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <TASK>
 __lock_acquire+0x125b/0x1f80 kernel/locking/lockdep.c:5049
 lock_acquire+0x1f8/0x5a0 kernel/locking/lockdep.c:5662
 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline]
 _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:154
 kasan_quarantine_put+0x14e/0x220 mm/kasan/quarantine.c:226
 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
 skb_free_head net/core/skbuff.c:762 [inline]
 skb_release_data+0x5de/0x7a0 net/core/skbuff.c:791
 skb_release_all net/core/skbuff.c:856 [inline]
 __kfree_skb net/core/skbuff.c:870 [inline]
 kfree_skb_reason+0x16f/0x390 net/core/skbuff.c:893
 kfree_skb include/linux/skbuff.h:1220 [inline]
 ieee80211_iface_work+0x260/0xce0 net/mac80211/iface.c:1688
 process_one_work+0x8a9/0x11d0 kernel/workqueue.c:2292
 worker_thread+0xa47/0x1200 kernel/workqueue.c:2439
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/08/15 18:12 linux-6.1.y 117ac406ba90 e4bacdaf .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: task hung in exit_mmap
* Struck through repros no longer work on HEAD.