syzbot


INFO: task hung in __rtnl_newlink (2)

Status: auto-obsoleted due to no activity on 2023/08/13 10:07
Subsystems: net
[Documentation on labels]
First crash: 321d, last: 321d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: task hung in __rtnl_newlink net 1 1429d 1429d 0/26 auto-closed as invalid on 2020/08/30 14:57

Sample crash report:
INFO: task syz-executor.1:13662 blocked for more than 143 seconds.
      Not tainted 6.4.0-rc6-next-20230614-syzkaller #0
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
task:syz-executor.1  state:D stack:25056 pid:13662 ppid:1      flags:0x00004004
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5380 [inline]
 __schedule+0x1d15/0x5790 kernel/sched/core.c:6709
 schedule+0xde/0x1a0 kernel/sched/core.c:6785
 schedule_preempt_disabled+0x13/0x20 kernel/sched/core.c:6844
 __mutex_lock_common kernel/locking/mutex.c:679 [inline]
 __mutex_lock+0xa3b/0x1350 kernel/locking/mutex.c:747
 rtnl_lock net/core/rtnetlink.c:78 [inline]
 __rtnl_newlink+0x7eb/0x1840 net/core/rtnetlink.c:3672
 rtnl_newlink+0x68/0xa0 net/core/rtnetlink.c:3695
 rtnetlink_rcv_msg+0x43d/0xd50 net/core/rtnetlink.c:6417
 netlink_rcv_skb+0x165/0x440 net/netlink/af_netlink.c:2548
 netlink_unicast_kernel net/netlink/af_netlink.c:1339 [inline]
 netlink_unicast+0x547/0x7f0 net/netlink/af_netlink.c:1365
 netlink_sendmsg+0x925/0xe30 net/netlink/af_netlink.c:1913
 sock_sendmsg_nosec net/socket.c:725 [inline]
 sock_sendmsg+0xde/0x190 net/socket.c:748
 __sys_sendto+0x254/0x350 net/socket.c:2134
 __do_sys_sendto net/socket.c:2146 [inline]
 __se_sys_sendto net/socket.c:2142 [inline]
 __x64_sys_sendto+0xe1/0x1b0 net/socket.c:2142
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x39/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f1bd343e1cc
RSP: 002b:00007fffc39f2080 EFLAGS: 00000293 ORIG_RAX: 000000000000002c
RAX: ffffffffffffffda RBX: 00007f1bd40d4620 RCX: 00007f1bd343e1cc
RDX: 000000000000003c RSI: 00007f1bd40d4670 RDI: 0000000000000003
RBP: 0000000000000000 R08: 00007fffc39f20d4 R09: 000000000000000c
R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000000
R13: 00007f1bd40d4670 R14: 0000000000000003 R15: 0000000000000000
 </TASK>

Showing all locks held in the system:
1 lock held by rcu_tasks_kthre/13:
 #0: ffffffff8c9a1a30 (rcu_tasks.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x31/0xe60 kernel/rcu/tasks.h:568
1 lock held by rcu_tasks_trace/14:
 #0: ffffffff8c9a16f0 (rcu_tasks_trace.tasks_gp_mutex){+.+.}-{3:3}, at: rcu_tasks_one_gp+0x31/0xe60 kernel/rcu/tasks.h:568
4 locks held by kworker/1:0/22:
1 lock held by khungtaskd/28:
 #0: ffffffff8c9a2640 (rcu_read_lock){....}-{1:2}, at: debug_show_all_locks+0x51/0x390 kernel/locking/lockdep.c:6615
4 locks held by kworker/1:2/917:
4 locks held by kworker/1:3/3310:
1 lock held by dhcpcd/4693:
 #0: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: devinet_ioctl+0x1c4/0x1df0 net/ipv4/devinet.c:1074
2 locks held by getty/4788:
 #0: ffff888028a2e098 (&tty->ldisc_sem){++++}-{0:0}, at: tty_ldisc_ref_wait+0x26/0x80 drivers/tty/tty_ldisc.c:243
 #1: ffffc900015902f0 (&ldata->atomic_read_lock){+.+.}-{3:3}, at: n_tty_read+0xf02/0x13f0 drivers/tty/n_tty.c:2176
4 locks held by kworker/1:4/5114:
3 locks held by kworker/0:12/5899:
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:20 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: raw_atomic64_set include/linux/atomic/atomic-arch-fallback.h:2608 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: raw_atomic_long_set include/linux/atomic/atomic-long.h:79 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: atomic_long_set include/linux/atomic/atomic-instrumented.h:3196 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:675 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:702 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: process_one_work+0x8fd/0x16f0 kernel/workqueue.c:2564
 #1: ffffc90014ff7db0 ((work_completion)(&(&net->ipv6.addr_chk_work)->work)){+.+.}-{0:0}, at: process_one_work+0x930/0x16f0 kernel/workqueue.c:2568
 #2: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: addrconf_verify_work+0x12/0x30 net/ipv6/addrconf.c:4630
5 locks held by kworker/u4:12/6381:
 #0: ffff88801465f938 ((wq_completion)netns){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:20 [inline]
 #0: ffff88801465f938 ((wq_completion)netns){+.+.}-{0:0}, at: raw_atomic64_set include/linux/atomic/atomic-arch-fallback.h:2608 [inline]
 #0: ffff88801465f938 ((wq_completion)netns){+.+.}-{0:0}, at: raw_atomic_long_set include/linux/atomic/atomic-long.h:79 [inline]
 #0: ffff88801465f938 ((wq_completion)netns){+.+.}-{0:0}, at: atomic_long_set include/linux/atomic/atomic-instrumented.h:3196 [inline]
 #0: ffff88801465f938 ((wq_completion)netns){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:675 [inline]
 #0: ffff88801465f938 ((wq_completion)netns){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:702 [inline]
 #0: ffff88801465f938 ((wq_completion)netns){+.+.}-{0:0}, at: process_one_work+0x8fd/0x16f0 kernel/workqueue.c:2564
 #1: ffffc900036bfdb0 (net_cleanup_work){+.+.}-{0:0}, at: process_one_work+0x930/0x16f0 kernel/workqueue.c:2568
 #2: ffffffff8e3b3cd0 (pernet_ops_rwsem){++++}-{3:3}, at: cleanup_net+0x9f/0xb10 net/core/net_namespace.c:576
 #3: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: ieee80211_unregister_hw+0x43/0x240 net/mac80211/main.c:1476
 #4: ffff888033678768 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: wiphy_lock include/net/cfg80211.h:5742 [inline]
 #4: ffff888033678768 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: cfg80211_netdev_notifier_call+0x2bc/0x12e0 net/wireless/core.c:1515
4 locks held by kworker/1:10/6396:
4 locks held by kworker/1:5/8617:
3 locks held by kworker/1:7/8641:
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:20 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: raw_atomic64_set include/linux/atomic/atomic-arch-fallback.h:2608 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: raw_atomic_long_set include/linux/atomic/atomic-long.h:79 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: atomic_long_set include/linux/atomic/atomic-instrumented.h:3196 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:675 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:702 [inline]
 #0: ffff888028217538 ((wq_completion)ipv6_addrconf){+.+.}-{0:0}, at: process_one_work+0x8fd/0x16f0 kernel/workqueue.c:2564
 #1: ffffc90006fe7db0 ((work_completion)(&(&net->ipv6.addr_chk_work)->work)){+.+.}-{0:0}, at: process_one_work+0x930/0x16f0 kernel/workqueue.c:2568
 #2: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: addrconf_verify_work+0x12/0x30 net/ipv6/addrconf.c:4630
2 locks held by kworker/1:11/8644:
6 locks held by kworker/1:12/8645:
 #0: ffff888012870d38 ((wq_completion)events){+.+.}-{0:0}, at: arch_atomic64_set arch/x86/include/asm/atomic64_64.h:20 [inline]
 #0: ffff888012870d38 ((wq_completion)events){+.+.}-{0:0}, at: raw_atomic64_set include/linux/atomic/atomic-arch-fallback.h:2608 [inline]
 #0: ffff888012870d38 ((wq_completion)events){+.+.}-{0:0}, at: raw_atomic_long_set include/linux/atomic/atomic-long.h:79 [inline]
 #0: ffff888012870d38 ((wq_completion)events){+.+.}-{0:0}, at: atomic_long_set include/linux/atomic/atomic-instrumented.h:3196 [inline]
 #0: ffff888012870d38 ((wq_completion)events){+.+.}-{0:0}, at: set_work_data kernel/workqueue.c:675 [inline]
 #0: ffff888012870d38 ((wq_completion)events){+.+.}-{0:0}, at: set_work_pool_and_clear_pending kernel/workqueue.c:702 [inline]
 #0: ffff888012870d38 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0x8fd/0x16f0 kernel/workqueue.c:2564
 #1: ffffc90009d37db0 ((work_completion)(&rdev->wiphy_work)){+.+.}-{0:0}, at: process_one_work+0x930/0x16f0 kernel/workqueue.c:2568
 #2: ffff888033678768 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: wiphy_lock include/net/cfg80211.h:5742 [inline]
 #2: ffff888033678768 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: cfg80211_wiphy_work+0x2c/0x330 net/wireless/core.c:422
 #3: ffff888076ed0d40 (&wdev->mtx){+.+.}-{3:3}, at: sdata_lock net/mac80211/ieee80211_i.h:1128 [inline]
 #3: ffff888076ed0d40 (&wdev->mtx){+.+.}-{3:3}, at: ieee80211_ibss_work+0x94/0x14a0 net/mac80211/ibss.c:1684
 #4: ffff888033679798 (&local->sta_mtx){+.+.}-{3:3}, at: ieee80211_ibss_sta_expire net/mac80211/ibss.c:1260 [inline]
 #4: ffff888033679798 (&local->sta_mtx){+.+.}-{3:3}, at: ieee80211_sta_merge_ibss net/mac80211/ibss.c:1303 [inline]
 #4: ffff888033679798 (&local->sta_mtx){+.+.}-{3:3}, at: ieee80211_ibss_work+0x4a1/0x14a0 net/mac80211/ibss.c:1712
 #5: ffffffff8c9addf8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: exp_funnel_lock kernel/rcu/tree_exp.h:293 [inline]
 #5: ffffffff8c9addf8 (rcu_state.exp_mutex){+.+.}-{3:3}, at: synchronize_rcu_expedited+0x64a/0x770 kernel/rcu/tree_exp.h:992
2 locks held by kworker/u4:59/9661:
 #0: ffff8880b983c458 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock_nested+0x2f/0x120 kernel/sched/core.c:558
 #1: ffff8880b9828848 (&per_cpu_ptr(group->pcpu, cpu)->seq){-.-.}-{0:0}, at: psi_task_switch+0x2de/0x950 kernel/sched/psi.c:995
4 locks held by kworker/1:14/11505:
1 lock held by syz-executor.1/13662:
 #0: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock net/core/rtnetlink.c:78 [inline]
 #0: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: __rtnl_newlink+0x7eb/0x1840 net/core/rtnetlink.c:3672
6 locks held by kworker/1:15/13696:
1 lock held by syz-executor.1/13698:
 #0: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock net/core/rtnetlink.c:78 [inline]
 #0: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0x3e8/0xd50 net/core/rtnetlink.c:6414
1 lock held by syz-executor.1/13705:
 #0: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock net/core/rtnetlink.c:78 [inline]
 #0: ffffffff8e3c8128 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0x3e8/0xd50 net/core/rtnetlink.c:6414

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

NMI backtrace for cpu 0
CPU: 0 PID: 28 Comm: khungtaskd Not tainted 6.4.0-rc6-next-20230614-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/25/2023
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0xd9/0x150 lib/dump_stack.c:106
 nmi_cpu_backtrace+0x29c/0x350 lib/nmi_backtrace.c:113
 nmi_trigger_cpumask_backtrace+0x2a4/0x300 lib/nmi_backtrace.c:62
 trigger_all_cpu_backtrace include/linux/nmi.h:154 [inline]
 check_hung_uninterruptible_tasks kernel/hung_task.c:222 [inline]
 watchdog+0xe16/0x1090 kernel/hung_task.c:379
 kthread+0x344/0x440 kernel/kthread.c:379
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:308
 </TASK>
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 13696 Comm: kworker/1:15 Not tainted 6.4.0-rc6-next-20230614-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/25/2023
Workqueue: wg-crypt-wg0 wg_packet_tx_worker
RIP: 0010:ipv6_addr_equal include/net/ipv6.h:671 [inline]
RIP: 0010:ipv6_chk_mcast_addr+0x14e/0x980 net/ipv6/mcast.c:1025
Code: 03 49 89 c5 49 01 ee 49 01 ed eb 0e e8 8b f6 a0 f8 48 85 db 0f 84 33 01 00 00 e8 7d f6 a0 f8 48 89 d8 48 c1 e8 03 80 3c 28 00 <0f> 85 44 07 00 00 41 80 3e 00 4c 8b 3b 0f 85 2a 07 00 00 48 8d 7b
RSP: 0018:ffffc900001e00f0 EFLAGS: 00000246
RAX: 1ffff1100e86af00 RBX: ffff888074357800 RCX: 0000000000000100
RDX: ffff8880232d5940 RSI: ffffffff88e36c23 RDI: 0000000000000005
RBP: dffffc0000000000 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000001 R12: ffff88806e12b9c8
R13: ffffed100dc2573a R14: ffffed100dc25739 R15: 0000000000000001
FS:  0000000000000000(0000) GS:ffff8880b9900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020007030 CR3: 000000000c775000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 ip6_mc_input+0x30d/0xf50 net/ipv6/ip6_input.c:522
 dst_input include/net/dst.h:468 [inline]
 ip6_rcv_finish+0x197/0x2c0 net/ipv6/ip6_input.c:79
 ip_sabotage_in+0x22a/0x2a0 net/bridge/br_netfilter_hooks.c:880
 nf_hook_entry_hookfn include/linux/netfilter.h:143 [inline]
 nf_hook_slow+0xc9/0x1f0 net/netfilter/core.c:626
 nf_hook.constprop.0+0x408/0x710 include/linux/netfilter.h:258
 NF_HOOK include/linux/netfilter.h:301 [inline]
 ipv6_rcv+0xa2/0x380 net/ipv6/ip6_input.c:309
 __netif_receive_skb_one_core+0x114/0x180 net/core/dev.c:5425
 __netif_receive_skb+0x1f/0x1c0 net/core/dev.c:5539
 netif_receive_skb_internal net/core/dev.c:5625 [inline]
 netif_receive_skb+0x133/0x7a0 net/core/dev.c:5684
 NF_HOOK include/linux/netfilter.h:303 [inline]
 NF_HOOK include/linux/netfilter.h:297 [inline]
 br_pass_frame_up+0x303/0x430 net/bridge/br_input.c:68
 br_handle_frame_finish+0xd1f/0x1de0 net/bridge/br_input.c:216
 br_nf_hook_thresh+0x2fb/0x3f0 net/bridge/br_netfilter_hooks.c:1048
 br_nf_pre_routing_finish_ipv6+0x695/0xf30 net/bridge/br_netfilter_ipv6.c:148
 NF_HOOK include/linux/netfilter.h:303 [inline]
 br_nf_pre_routing_ipv6+0x41b/0x830 net/bridge/br_netfilter_ipv6.c:178
 br_nf_pre_routing+0xda4/0x1520 net/bridge/br_netfilter_hooks.c:508
 nf_hook_entry_hookfn include/linux/netfilter.h:143 [inline]
 nf_hook_bridge_pre net/bridge/br_input.c:272 [inline]
 br_handle_frame+0xac1/0x1440 net/bridge/br_input.c:417
 __netif_receive_skb_core+0xa10/0x3900 net/core/dev.c:5319
 __netif_receive_skb_one_core+0xae/0x180 net/core/dev.c:5423
 __netif_receive_skb+0x1f/0x1c0 net/core/dev.c:5539
 process_backlog+0x13e/0x6d0 net/core/dev.c:5867
 __napi_poll+0xb3/0x520 net/core/dev.c:6433
 napi_poll net/core/dev.c:6500 [inline]
 net_rx_action+0x8e4/0xd00 net/core/dev.c:6633
 __do_softirq+0x1d4/0x905 kernel/softirq.c:553
 do_softirq.part.0+0x87/0xc0 kernel/softirq.c:454
 </IRQ>
 <TASK>
 do_softirq kernel/softirq.c:446 [inline]
 __local_bh_enable_ip+0x106/0x130 kernel/softirq.c:381
 local_bh_enable include/linux/bottom_half.h:33 [inline]
 rcu_read_unlock_bh include/linux/rcupdate.h:818 [inline]
 keep_key_fresh drivers/net/wireguard/send.c:135 [inline]
 wg_packet_create_data_done drivers/net/wireguard/send.c:259 [inline]
 wg_packet_tx_worker+0x353/0x770 drivers/net/wireguard/send.c:276
 process_one_work+0xa34/0x16f0 kernel/workqueue.c:2594
 worker_thread+0x67d/0x10c0 kernel/workqueue.c:2745
 kthread+0x344/0x440 kernel/kthread.c:379
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:308
 </TASK>
net_ratelimit: 10956 callbacks suppressed
bridge0: received packet on bridge_slave_0 with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:aa:aa:aa:aa:aa:0c, vlan:0)
bridge0: received packet on veth0_to_bridge with own address as source address (addr:16:c7:60:8b:7b:fa, vlan:0)

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2023/06/14 10:03 linux-next b16049b21162 d2ee9228 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root INFO: task hung in __rtnl_newlink
* Struck through repros no longer work on HEAD.