syzbot


possible deadlock in try_to_wake_up (3)

Status: auto-obsoleted due to no activity on 2023/11/27 02:05
Subsystems: net
[Documentation on labels]
Reported-by: syzbot+6b8ea5bb987ec6fe0fd1@syzkaller.appspotmail.com
First crash: 288d, last: 274d
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [kernel?] possible deadlock in try_to_wake_up (3) 1 (2) 2023/11/08 02:03
Similar bugs (7)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-6.1 possible deadlock in try_to_wake_up (2) origin:upstream C 14 5d19h 70d 0/3 upstream: reported C repro on 2024/05/09 05:15
linux-6.1 possible deadlock in try_to_wake_up C done 1 112d 112d 3/3 fixed on 2024/04/29 07:11
linux-5.15 possible deadlock in try_to_wake_up origin:upstream C 9 1d01h 103d 0/3 upstream: reported C repro on 2024/04/05 17:03
upstream possible deadlock in try_to_wake_up (2) mm 1 669d 665d 0/27 auto-obsoleted due to no activity on 2023/01/16 12:10
upstream possible deadlock in try_to_wake_up (4) bpf net C error 19 59d 121d 26/27 fixed on 2024/05/22 23:36
upstream possible deadlock in try_to_wake_up (5) mm 15 14h22m 48d 0/27 upstream: reported on 2024/05/30 18:36
upstream possible deadlock in try_to_wake_up mm 39 2012d 2043d 0/27 auto-closed as invalid on 2019/07/13 09:55

Sample crash report:
wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50
wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50
======================================================
WARNING: possible circular locking dependency detected
6.6.0-rc4-next-20231005-syzkaller #0 Not tainted
------------------------------------------------------
kworker/1:4/5146 is trying to acquire lock:
ffff88801cf227b8 (&p->pi_lock){-.-.}-{2:2}, at: class_raw_spinlock_irqsave_constructor include/linux/spinlock.h:518 [inline]
ffff88801cf227b8 (&p->pi_lock){-.-.}-{2:2}, at: try_to_wake_up+0xb0/0x15d0 kernel/sched/core.c:4213

but task is already holding lock:
ffffffff8cb98e18 ((console_sem).lock){-...}-{2:2}, at: up+0x16/0xb0 kernel/locking/semaphore.c:187

which lock already depends on the new lock.


the existing dependency chain (in reverse order) is:

-> #2 ((console_sem).lock){-...}-{2:2}:
       __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
       _raw_spin_lock_irqsave+0x3a/0x50 kernel/locking/spinlock.c:162
       down_trylock+0x12/0x70 kernel/locking/semaphore.c:139
       __down_trylock_console_sem+0x40/0x140 kernel/printk/printk.c:323
       console_trylock+0x73/0x130 kernel/printk/printk.c:2652
       console_trylock_spinning kernel/printk/printk.c:1924 [inline]
       vprintk_emit+0x162/0x5f0 kernel/printk/printk.c:2303
       vprintk+0x7b/0x90 kernel/printk/printk_safe.c:45
       _printk+0xc8/0x100 kernel/printk/printk.c:2329
       pick_eevdf kernel/sched/fair.c:963 [inline]
       pick_next_entity kernel/sched/fair.c:5247 [inline]
       pick_next_task_fair+0x1c5/0x1280 kernel/sched/fair.c:8205
       __pick_next_task kernel/sched/core.c:5986 [inline]
       pick_next_task kernel/sched/core.c:6061 [inline]
       __schedule+0x493/0x5a00 kernel/sched/core.c:6640
       __schedule_loop kernel/sched/core.c:6753 [inline]
       schedule+0xe7/0x270 kernel/sched/core.c:6768
       schedule_hrtimeout_range_clock+0x211/0x440 kernel/time/hrtimer.c:2317
       ep_poll fs/eventpoll.c:1921 [inline]
       do_epoll_wait+0x131a/0x1a00 fs/eventpoll.c:2318
       __do_sys_epoll_wait fs/eventpoll.c:2330 [inline]
       __se_sys_epoll_wait fs/eventpoll.c:2325 [inline]
       __x64_sys_epoll_wait+0x194/0x290 fs/eventpoll.c:2325
       do_syscall_x64 arch/x86/entry/common.c:51 [inline]
       do_syscall_64+0x38/0xb0 arch/x86/entry/common.c:81
       entry_SYSCALL_64_after_hwframe+0x63/0xcd

-> #1 (&rq->__lock){-.-.}-{2:2}:
       _raw_spin_lock_nested+0x31/0x40 kernel/locking/spinlock.c:378
       raw_spin_rq_lock_nested+0x29/0x130 kernel/sched/core.c:558
       raw_spin_rq_lock kernel/sched/sched.h:1357 [inline]
       rq_lock kernel/sched/sched.h:1671 [inline]
       task_fork_fair+0x70/0x240 kernel/sched/fair.c:12399
       sched_cgroup_fork+0x3cf/0x510 kernel/sched/core.c:4799
       copy_process+0x4580/0x74b0 kernel/fork.c:2609
       kernel_clone+0xfd/0x920 kernel/fork.c:2907
       user_mode_thread+0xb4/0xf0 kernel/fork.c:2985
       rest_init+0x27/0x2b0 init/main.c:691
       arch_call_rest_init+0x13/0x30 init/main.c:823
       start_kernel+0x39f/0x480 init/main.c:1068
       x86_64_start_reservations+0x18/0x30 arch/x86/kernel/head64.c:556
       x86_64_start_kernel+0xb2/0xc0 arch/x86/kernel/head64.c:537
       secondary_startup_64_no_verify+0x166/0x16b

-> #0 (&p->pi_lock){-.-.}-{2:2}:
       check_prev_add kernel/locking/lockdep.c:3134 [inline]
       check_prevs_add kernel/locking/lockdep.c:3253 [inline]
       validate_chain kernel/locking/lockdep.c:3868 [inline]
       __lock_acquire+0x2e3d/0x5de0 kernel/locking/lockdep.c:5136
       lock_acquire kernel/locking/lockdep.c:5753 [inline]
       lock_acquire+0x1ae/0x510 kernel/locking/lockdep.c:5718
       __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
       _raw_spin_lock_irqsave+0x3a/0x50 kernel/locking/spinlock.c:162
       class_raw_spinlock_irqsave_constructor include/linux/spinlock.h:518 [inline]
       try_to_wake_up+0xb0/0x15d0 kernel/sched/core.c:4213
       up+0x79/0xb0 kernel/locking/semaphore.c:191
       __up_console_sem kernel/printk/printk.c:340 [inline]
       __console_unlock kernel/printk/printk.c:2699 [inline]
       console_unlock+0x1cf/0x260 kernel/printk/printk.c:3031
       vprintk_emit+0x17f/0x5f0 kernel/printk/printk.c:2304
       vprintk+0x7b/0x90 kernel/printk/printk_safe.c:45
       _printk+0xc8/0x100 kernel/printk/printk.c:2329
       ieee80211_sta_create_ibss+0x137/0x470 net/mac80211/ibss.c:1313
       ieee80211_sta_find_ibss net/mac80211/ibss.c:1449 [inline]
       ieee80211_ibss_work+0xbb6/0x14b0 net/mac80211/ibss.c:1666
       ieee80211_iface_work+0xbdf/0xd90 net/mac80211/iface.c:1657
       cfg80211_wiphy_work+0x24e/0x330 net/wireless/core.c:435
       process_one_work+0x884/0x15c0 kernel/workqueue.c:2630
       process_scheduled_works kernel/workqueue.c:2703 [inline]
       worker_thread+0x8b9/0x1290 kernel/workqueue.c:2784
       kthread+0x33c/0x440 kernel/kthread.c:388
       ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
       ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304

other info that might help us debug this:

Chain exists of:
  &p->pi_lock --> &rq->__lock --> (console_sem).lock

 Possible unsafe locking scenario:

       CPU0                    CPU1
       ----                    ----
  lock((console_sem).lock);
                               lock(&rq->__lock);
                               lock((console_sem).lock);
  lock(&p->pi_lock);

 *** DEADLOCK ***

4 locks held by kworker/1:4/5146:
 #0: ffff888012c70d38 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x787/0x15c0 kernel/workqueue.c:2605
 #1: ffffc9000448fd80 ((work_completion)(&rdev->wiphy_work)){+.+.}-{0:0}, at: process_one_work+0x7e9/0x15c0 kernel/workqueue.c:2606
 #2: ffff88804e3b0768 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: wiphy_lock include/net/cfg80211.h:5870 [inline]
 #2: ffff88804e3b0768 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: cfg80211_wiphy_work+0x2b/0x330 net/wireless/core.c:422
 #3: ffffffff8cb98e18 ((console_sem).lock){-...}-{2:2}, at: up+0x16/0xb0 kernel/locking/semaphore.c:187

stack backtrace:
CPU: 1 PID: 5146 Comm: kworker/1:4 Not tainted 6.6.0-rc4-next-20231005-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/06/2023
Workqueue: events cfg80211_wiphy_work
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0xd9/0x1b0 lib/dump_stack.c:106
 check_noncircular+0x311/0x3f0 kernel/locking/lockdep.c:2187
 check_prev_add kernel/locking/lockdep.c:3134 [inline]
 check_prevs_add kernel/locking/lockdep.c:3253 [inline]
 validate_chain kernel/locking/lockdep.c:3868 [inline]
 __lock_acquire+0x2e3d/0x5de0 kernel/locking/lockdep.c:5136
 lock_acquire kernel/locking/lockdep.c:5753 [inline]
 lock_acquire+0x1ae/0x510 kernel/locking/lockdep.c:5718
 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
 _raw_spin_lock_irqsave+0x3a/0x50 kernel/locking/spinlock.c:162
 class_raw_spinlock_irqsave_constructor include/linux/spinlock.h:518 [inline]
 try_to_wake_up+0xb0/0x15d0 kernel/sched/core.c:4213
 up+0x79/0xb0 kernel/locking/semaphore.c:191
 __up_console_sem kernel/printk/printk.c:340 [inline]
 __console_unlock kernel/printk/printk.c:2699 [inline]
 console_unlock+0x1cf/0x260 kernel/printk/printk.c:3031
 vprintk_emit+0x17f/0x5f0 kernel/printk/printk.c:2304
 vprintk+0x7b/0x90 kernel/printk/printk_safe.c:45
 _printk+0xc8/0x100 kernel/printk/printk.c:2329
 ieee80211_sta_create_ibss+0x137/0x470 net/mac80211/ibss.c:1313
 ieee80211_sta_find_ibss net/mac80211/ibss.c:1449 [inline]
 ieee80211_ibss_work+0xbb6/0x14b0 net/mac80211/ibss.c:1666
 ieee80211_iface_work+0xbdf/0xd90 net/mac80211/iface.c:1657
 cfg80211_wiphy_work+0x24e/0x330 net/wireless/core.c:435
 process_one_work+0x884/0x15c0 kernel/workqueue.c:2630
 process_scheduled_works kernel/workqueue.c:2703 [inline]
 worker_thread+0x8b9/0x1290 kernel/workqueue.c:2784
 kthread+0x33c/0x440 kernel/kthread.c:388
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x11/0x20 arch/x86/entry/entry_64.S:304
 </TASK>
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: unknown main item tag 0x0
hid-generic 0000:0000:0000.0001: hidraw0: <UNKNOWN> HID v0.00 Device [syz1] on syz1

Crashes (103):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2023/10/18 01:48 linux-next 7d730f1bf6f3 342b9c55 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/17 22:40 linux-next 7d730f1bf6f3 342b9c55 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/17 20:19 linux-next 7d730f1bf6f3 342b9c55 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/17 19:14 linux-next 7d730f1bf6f3 342b9c55 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/17 12:25 linux-next 7d730f1bf6f3 342b9c55 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/17 10:53 linux-next 7d730f1bf6f3 342b9c55 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/17 04:16 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/16 22:14 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/16 20:31 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/16 14:02 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/16 01:03 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/15 11:18 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/15 03:46 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/14 15:18 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/14 13:13 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/14 07:07 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 22:55 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 18:58 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 15:23 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 13:50 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 11:18 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 09:14 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 06:12 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 04:25 linux-next 7d730f1bf6f3 6388bc36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 02:15 linux-next 7d730f1bf6f3 fc170927 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/13 00:57 linux-next 7d730f1bf6f3 fc170927 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/12 23:55 linux-next 7d730f1bf6f3 fc170927 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/12 22:41 linux-next 7d730f1bf6f3 fc170927 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/12 18:34 linux-next 7d730f1bf6f3 fc170927 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/12 14:04 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/12 11:54 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/12 10:15 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/12 06:47 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/11 21:20 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/11 09:45 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/11 06:52 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/11 04:04 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/10 23:38 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/10 20:21 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/10 17:59 linux-next 7d730f1bf6f3 83165b57 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/10 14:52 linux-next 7d730f1bf6f3 c9be5398 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/10 09:55 linux-next 7d730f1bf6f3 c9be5398 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/10 00:38 linux-next 7d730f1bf6f3 3c53c7d9 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/08 11:20 linux-next 7d730f1bf6f3 5e837c76 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
2023/10/04 11:54 linux-next 33b64befb1a2 65faba36 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root possible deadlock in try_to_wake_up
* Struck through repros no longer work on HEAD.