INFO: task kworker/0:5:8060 blocked for more than 143 seconds. Not tainted 5.7.0-syzkaller #0 "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. kworker/0:5 D26080 8060 2 0x80004000 Workqueue: wg-kex-wg1 wg_packet_handshake_receive_worker Call Trace: context_switch kernel/sched/core.c:3430 [inline] __schedule+0x8f3/0x1fc0 kernel/sched/core.c:4156 schedule+0xd0/0x2a0 kernel/sched/core.c:4231 rwsem_down_read_slowpath+0x4c7/0xfa0 kernel/locking/rwsem.c:1099 __down_read kernel/locking/rwsem.c:1341 [inline] down_read+0x1ed/0x420 kernel/locking/rwsem.c:1494 wg_noise_handshake_consume_initiation+0x3a6/0x6a0 drivers/net/wireguard/noise.c:602 wg_receive_handshake_packet drivers/net/wireguard/receive.c:151 [inline] wg_packet_handshake_receive_worker+0x5a4/0x730 drivers/net/wireguard/receive.c:220 process_one_work+0x965/0x16a0 kernel/workqueue.c:2268 worker_thread+0x96/0xe20 kernel/workqueue.c:2414 kthread+0x388/0x470 kernel/kthread.c:268 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:351 INFO: task kworker/1:2:19467 blocked for more than 144 seconds. Not tainted 5.7.0-syzkaller #0 "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. kworker/1:2 D26080 19467 2 0x80004000 Workqueue: wg-kex-wg0 wg_packet_handshake_receive_worker Call Trace: context_switch kernel/sched/core.c:3430 [inline] __schedule+0x8f3/0x1fc0 kernel/sched/core.c:4156 schedule+0xd0/0x2a0 kernel/sched/core.c:4231 rwsem_down_read_slowpath+0x4c7/0xfa0 kernel/locking/rwsem.c:1099 __down_read kernel/locking/rwsem.c:1341 [inline] down_read+0x1ed/0x420 kernel/locking/rwsem.c:1494 wg_noise_handshake_consume_initiation+0x3a6/0x6a0 drivers/net/wireguard/noise.c:602 wg_receive_handshake_packet drivers/net/wireguard/receive.c:151 [inline] wg_packet_handshake_receive_worker+0x5a4/0x730 drivers/net/wireguard/receive.c:220 process_one_work+0x965/0x16a0 kernel/workqueue.c:2268 worker_thread+0x96/0xe20 kernel/workqueue.c:2414 kthread+0x388/0x470 kernel/kthread.c:268 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:351 Showing all locks held in the system: 1 lock held by systemd/1: 1 lock held by kthreadd/2: 4 locks held by kworker/0:0/5: 4 locks held by kworker/1:0/17: 4 locks held by kworker/u4:1/21: #0: ffff88809f0bf938 ((wq_completion)wg-kex-wg2#8){+.+.}-{0:0}, at: __write_once_size include/linux/compiler.h:279 [inline] #0: ffff88809f0bf938 ((wq_completion)wg-kex-wg2#8){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline] #0: ffff88809f0bf938 ((wq_completion)wg-kex-wg2#8){+.+.}-{0:0}, at: atomic64_set include/asm-generic/atomic-instrumented.h:855 [inline] #0: ffff88809f0bf938 ((wq_completion)wg-kex-wg2#8){+.+.}-{0:0}, at: atomic_long_set include/asm-generic/atomic-long.h:40 [inline] #0: ffff88809f0bf938 ((wq_completion)wg-kex-wg2#8){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:615 [inline] #0: ffff88809f0bf938 ((wq_completion)wg-kex-wg2#8){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:642 [inline] #0: ffff88809f0bf938 ((wq_completion)wg-kex-wg2#8){+.+.}-{0:0}, at: process_one_work+0x844/0x16a0 kernel/workqueue.c:2239 #1: ffffc90000dd7dc0 ((work_completion)(&peer->transmit_handshake_work)){+.+.}-{0:0}, at: process_one_work+0x878/0x16a0 kernel/workqueue.c:2243 #2: ffff888056129048 (&wg->static_identity.lock){++++}-{3:3}, at: wg_noise_handshake_create_initiation+0xa9/0x620 drivers/net/wireguard/noise.c:499 #3: ffff88809a3bc690 (&handshake->lock){++++}-{3:3}, at: wg_noise_handshake_create_initiation+0xbd/0x620 drivers/net/wireguard/noise.c:500 4 locks held by kworker/u4:4/164: #0: ffff8880a8f3f138 ((wq_completion)wg-kex-wg1){+.+.}-{0:0}, at: __write_once_size include/linux/compiler.h:279 [inline] #0: ffff8880a8f3f138 ((wq_completion)wg-kex-wg1){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline] #0: ffff8880a8f3f138 ((wq_completion)wg-kex-wg1){+.+.}-{0:0}, at: atomic64_set include/asm-generic/atomic-instrumented.h:855 [inline] #0: ffff8880a8f3f138 ((wq_completion)wg-kex-wg1){+.+.}-{0:0}, at: atomic_long_set include/asm-generic/atomic-long.h:40 [inline] #0: ffff8880a8f3f138 ((wq_completion)wg-kex-wg1){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:615 [inline] #0: ffff8880a8f3f138 ((wq_completion)wg-kex-wg1){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:642 [inline] #0: ffff8880a8f3f138 ((wq_completion)wg-kex-wg1){+.+.}-{0:0}, at: process_one_work+0x844/0x16a0 kernel/workqueue.c:2239 #1: ffffc90001617dc0 ((work_completion)(&peer->transmit_handshake_work)){+.+.}-{0:0}, at: process_one_work+0x878/0x16a0 kernel/workqueue.c:2243 #2: ffff88808bf19048 (&wg->static_identity.lock){++++}-{3:3}, at: wg_noise_handshake_create_initiation+0xa9/0x620 drivers/net/wireguard/noise.c:499 #3: ffff88805665e690 (&handshake->lock){++++}-{3:3}, at: wg_noise_handshake_create_initiation+0xbd/0x620 drivers/net/wireguard/noise.c:500 1 lock held by khungtaskd/1152: #0: ffffffff899bdd80 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x53/0x260 kernel/locking/lockdep.c:5779 3 locks held by khugepaged/1159: 1 lock held by kswapd1/1672: 2 locks held by systemd-journal/3861: 2 locks held by systemd-udevd/3880: 2 locks held by systemd-timesyn/4069: 2 locks held by in:imklog/6480: 1 lock held by cron/6482: 2 locks held by syz-fuzzer/6792: 4 locks held by kworker/0:5/8060: #0: ffff888093f3d538 ((wq_completion)wg-kex-wg1#2){+.+.}-{0:0}, at: __write_once_size include/linux/compiler.h:279 [inline] #0: ffff888093f3d538 ((wq_completion)wg-kex-wg1#2){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline] #0: ffff888093f3d538 ((wq_completion)wg-kex-wg1#2){+.+.}-{0:0}, at: atomic64_set include/asm-generic/atomic-instrumented.h:855 [inline] #0: ffff888093f3d538 ((wq_completion)wg-kex-wg1#2){+.+.}-{0:0}, at: atomic_long_set include/asm-generic/atomic-long.h:40 [inline] #0: ffff888093f3d538 ((wq_completion)wg-kex-wg1#2){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:615 [inline] #0: ffff888093f3d538 ((wq_completion)wg-kex-wg1#2){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:642 [inline] #0: ffff888093f3d538 ((wq_completion)wg-kex-wg1#2){+.+.}-{0:0}, at: process_one_work+0x844/0x16a0 kernel/workqueue.c:2239 #1: ffffc90016cb7dc0 ((work_completion)(&({ do { const void *__vpp_verify = (typeof((worker) + 0))((void *)0); (void)__vpp_verify; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*((worker))) *)((worker)))); (typeof((typeof(*((worker))) *)((worker)))) (__ptr + (((__per_cpu_offset[(cpu)])))); }); })->work)){+.+.}-{0:0}, at: process_one_work+0x878/0x16a0 kernel/workqueue.c:2243 #2: ffff88808bf19048 (&wg->static_identity.lock){++++}-{3:3}, at: wg_noise_handshake_consume_initiation+0xaa/0x6a0 drivers/net/wireguard/noise.c:568 #3: ffff88805665e690 (&handshake->lock){++++}-{3:3}, at: wg_noise_handshake_consume_initiation+0x3a6/0x6a0 drivers/net/wireguard/noise.c:602 4 locks held by kworker/1:1/18392: 4 locks held by kworker/0:3/19373: 4 locks held by kworker/1:2/19467: #0: ffff88809fc25538 ((wq_completion)wg-kex-wg0#6){+.+.}-{0:0}, at: __write_once_size include/linux/compiler.h:279 [inline] #0: ffff88809fc25538 ((wq_completion)wg-kex-wg0#6){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline] #0: ffff88809fc25538 ((wq_completion)wg-kex-wg0#6){+.+.}-{0:0}, at: atomic64_set include/asm-generic/atomic-instrumented.h:855 [inline] #0: ffff88809fc25538 ((wq_completion)wg-kex-wg0#6){+.+.}-{0:0}, at: atomic_long_set include/asm-generic/atomic-long.h:40 [inline] #0: ffff88809fc25538 ((wq_completion)wg-kex-wg0#6){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:615 [inline] #0: ffff88809fc25538 ((wq_completion)wg-kex-wg0#6){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:642 [inline] #0: ffff88809fc25538 ((wq_completion)wg-kex-wg0#6){+.+.}-{0:0}, at: process_one_work+0x844/0x16a0 kernel/workqueue.c:2239 #1: ffffc9000720fdc0 ((work_completion)(&({ do { const void *__vpp_verify = (typeof((worker) + 0))((void *)0); (void)__vpp_verify; } while (0); ({ unsigned long __ptr; __asm__ ("" : "=r"(__ptr) : "0"((typeof(*((worker))) *)((worker)))); (typeof((typeof(*((worker))) *)((worker)))) (__ptr + (((__per_cpu_offset[(cpu)])))); }); })->work)){+.+.}-{0:0}, at: process_one_work+0x878/0x16a0 kernel/workqueue.c:2243 #2: ffff888056a8d048 (&wg->static_identity.lock){++++}-{3:3}, at: wg_noise_handshake_consume_initiation+0xaa/0x6a0 drivers/net/wireguard/noise.c:568 #3: ffff888053f36690 (&handshake->lock){++++}-{3:3}, at: wg_noise_handshake_consume_initiation+0x3a6/0x6a0 drivers/net/wireguard/noise.c:602 4 locks held by kworker/u4:2/19602: #0: ffff88809e533138 ((wq_completion)wg-kex-wg0#5){+.+.}-{0:0}, at: __write_once_size include/linux/compiler.h:279 [inline] #0: ffff88809e533138 ((wq_completion)wg-kex-wg0#5){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:34 [inline] #0: ffff88809e533138 ((wq_completion)wg-kex-wg0#5){+.+.}-{0:0}, at: atomic64_set include/asm-generic/atomic-instrumented.h:855 [inline] #0: ffff88809e533138 ((wq_completion)wg-kex-wg0#5){+.+.}-{0:0}, at: atomic_long_set include/asm-generic/atomic-long.h:40 [inline] #0: ffff88809e533138 ((wq_completion)wg-kex-wg0#5){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:615 [inline] #0: ffff88809e533138 ((wq_completion)wg-kex-wg0#5){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:642 [inline] #0: ffff88809e533138 ((wq_completion)wg-kex-wg0#5){+.+.}-{0:0}, at: process_one_work+0x844/0x16a0 kernel/workqueue.c:2239 #1: ffffc9000849fdc0 ((work_completion)(&peer->transmit_handshake_work)){+.+.}-{0:0}, at: process_one_work+0x878/0x16a0 kernel/workqueue.c:2243 #2: ffff888056a8d048 (&wg->static_identity.lock){++++}-{3:3}, at: wg_noise_handshake_create_initiation+0xa9/0x620 drivers/net/wireguard/noise.c:499 #3: ffff888053f36690 (&handshake->lock){++++}-{3:3}, at: wg_noise_handshake_create_initiation+0xbd/0x620 drivers/net/wireguard/noise.c:500 4 locks held by kworker/0:1/20318: ============================================= NMI backtrace for cpu 1 CPU: 1 PID: 1152 Comm: khungtaskd Not tainted 5.7.0-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x188/0x20d lib/dump_stack.c:118 nmi_cpu_backtrace.cold+0x70/0xb1 lib/nmi_backtrace.c:101 nmi_trigger_cpumask_backtrace+0x1e6/0x221 lib/nmi_backtrace.c:62 trigger_all_cpu_backtrace include/linux/nmi.h:146 [inline] check_hung_uninterruptible_tasks kernel/hung_task.c:205 [inline] watchdog+0xa8c/0x1010 kernel/hung_task.c:289 kthread+0x388/0x470 kernel/kthread.c:268 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:351 Sending NMI from CPU 1 to CPUs 0: NMI backtrace for cpu 0 CPU: 0 PID: 1672 Comm: kswapd1 Not tainted 5.7.0-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:check_memory_region+0x15/0x190 mm/kasan/generic.c:191 Code: 01 02 0f 1f 00 48 89 f2 be f8 00 00 00 e9 53 1c 01 02 0f 1f 00 48 85 f6 0f 84 40 01 00 00 49 89 fa 41 54 0f b6 d2 49 01 f2 55 <53> 0f 82 20 01 00 00 48 b8 ff ff ff ff ff 7f ff ff 48 39 c7 0f 86 RSP: 0018:ffffc90006277600 EFLAGS: 00000082 RAX: ffff8880a43ee440 RBX: ffffc900062777b8 RCX: ffffffff8199562f RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffea00077b35c0 RBP: ffffea00077b35c0 R08: ffff8880a43ee440 R09: fffff94000ef66b9 R10: ffffea00077b35c8 R11: fffff94000ef66b8 R12: dffffc0000000000 R13: ffffea00077b35c0 R14: 0000000000000000 R15: ffffea00077b35c8 FS: 0000000000000000(0000) GS:ffff8880ae600000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007faf319b32e3 CR3: 0000000095fc8000 CR4: 00000000001406f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: test_bit include/asm-generic/bitops/instrumented-non-atomic.h:110 [inline] PageUnevictable include/linux/page-flags.h:402 [inline] page_lru include/linux/mm_inline.h:119 [inline] move_pages_to_lru+0x54f/0x1a40 mm/vmscan.c:1868 shrink_inactive_list+0x466/0xca0 mm/vmscan.c:1966 shrink_list mm/vmscan.c:2170 [inline] shrink_lruvec+0x5fa/0x1170 mm/vmscan.c:2464 shrink_node_memcgs mm/vmscan.c:2653 [inline] shrink_node+0x4d4/0x1c00 mm/vmscan.c:2767 kswapd_shrink_node mm/vmscan.c:3514 [inline] balance_pgdat+0x753/0x1110 mm/vmscan.c:3672 kswapd+0x5d0/0xe80 mm/vmscan.c:3929 kthread+0x388/0x470 kernel/kthread.c:268 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:351