[ 17.893917][ T296] [ 17.894013][ T296] ======================================================== [ 17.894140][ T296] WARNING: possible irq lock inversion dependency detected [ 17.894268][ T296] 7.1.0-rc5-virtme #1 Not tainted [ 17.894349][ T296] -------------------------------------------------------- [ 17.894465][ T296] sysctl/296 just changed the state of lock: [ 17.894570][ T296] ffffffff8f37e8b8 (acaddr_hash_lock){+.+.}-{3:3}, at: __ipv6_dev_ac_dec+0x236/0x5d0 [ 17.894723][ T296] but this lock was taken by another, SOFTIRQ-READ-safe lock in the past: [ 17.894846][ T296] (&ndev->lock){++.-}-{3:3} [ 17.894849][ T296] [ 17.894849][ T296] [ 17.894849][ T296] and interrupts could create inverse lock ordering between them. [ 17.894849][ T296] [ 17.895428][ T296] [ 17.895428][ T296] other info that might help us debug this: [ 17.895546][ T296] Possible interrupt unsafe locking scenario: [ 17.895546][ T296] [ 17.895664][ T296] CPU0 CPU1 [ 17.895747][ T296] ---- ---- [ 17.895827][ T296] lock(acaddr_hash_lock); [ 17.895909][ T296] local_irq_disable(); [ 17.896013][ T296] lock(&ndev->lock); [ 17.896116][ T296] lock(acaddr_hash_lock); [ 17.896215][ T296] [ 17.896280][ T296] lock(&ndev->lock); [ 17.896341][ T296] [ 17.896341][ T296] *** DEADLOCK *** [ 17.896341][ T296] [ 17.896458][ T296] 2 locks held by sysctl/296: [ 17.896541][ T296] #0: ff1100000a08c3e0 (sb_writers#3){.+.+}-{0:0}, at: ksys_write+0x116/0x250 [ 17.896688][ T296] #1: ffffffff8f28c9c0 (rtnl_mutex){+.+.}-{4:4}, at: addrconf_fixup_forwarding+0x4d/0x4d0 [ 17.896850][ T296] [ 17.896850][ T296] the shortest dependencies between 2nd lock and 1st lock: [ 17.897007][ T296] -> (&ndev->lock){++.-}-{3:3} { [ 17.897091][ T296] HARDIRQ-ON-W at: [ 17.897157][ T296] __lock_acquire+0x378/0xc10 [ 17.897260][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.897365][ T296] _raw_write_lock_bh+0x38/0x50 [ 17.897474][ T296] addrconf_permanent_addr+0x108/0x9c0 [ 17.897599][ T296] addrconf_notify+0x151/0xf30 [ 17.897710][ T296] notifier_call_chain+0xb0/0x320 [ 17.897817][ T296] __dev_notify_flags+0xde/0x280 [ 17.897919][ T296] netif_change_flags+0xfe/0x190 [ 17.898032][ T296] do_setlink.isra.0+0x1cc3/0x2750 [ 17.898132][ T296] rtnl_newlink+0x8d1/0xef0 [ 17.898275][ T296] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 17.898374][ T296] netlink_rcv_skb+0x14e/0x3a0 [ 17.898484][ T296] netlink_unicast+0x486/0x750 [ 17.898627][ T296] netlink_sendmsg+0x735/0xc60 [ 17.898727][ T296] ____sys_sendmsg+0x419/0x850 [ 17.898828][ T296] ___sys_sendmsg+0x14e/0x1d0 [ 17.898976][ T296] __sys_sendmsg+0x145/0x1f0 [ 17.899085][ T296] do_syscall_64+0x117/0x590 [ 17.899192][ T296] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 17.899332][ T296] HARDIRQ-ON-R at: [ 17.899392][ T296] __lock_acquire+0x378/0xc10 [ 17.899492][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.899594][ T296] _raw_read_lock_bh+0x44/0x80 [ 17.899698][ T296] inet6_fill_ifla6_attrs+0x1aee/0x21e0 [ 17.899819][ T296] inet6_fill_link_af+0x5c/0xe0 [ 17.899936][ T296] rtnl_fill_ifinfo.isra.0+0x1a45/0x2c20 [ 17.900057][ T296] rtnl_getlink+0x9c9/0xeb0 [ 17.900158][ T296] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 17.900260][ T296] netlink_rcv_skb+0x14e/0x3a0 [ 17.900367][ T296] netlink_unicast+0x486/0x750 [ 17.900474][ T296] netlink_sendmsg+0x735/0xc60 [ 17.900580][ T296] ____sys_sendmsg+0x419/0x850 [ 17.900725][ T296] ___sys_sendmsg+0x14e/0x1d0 [ 17.900832][ T296] __sys_sendmsg+0x145/0x1f0 [ 17.900936][ T296] do_syscall_64+0x117/0x590 [ 17.901083][ T296] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 17.901210][ T296] IN-SOFTIRQ-R at: [ 17.901275][ T296] __lock_acquire+0x378/0xc10 [ 17.901423][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.901524][ T296] _raw_read_lock_bh+0x44/0x80 [ 17.901632][ T296] ipv6_get_lladdr+0xa8/0x3f0 [ 17.901744][ T296] ndisc_send_ns+0xf3/0x120 [ 17.901892][ T296] ndisc_solicit+0x314/0x480 [ 17.901997][ T296] neigh_probe+0xb3/0x100 [ 17.902110][ T296] __neigh_event_send+0x802/0x1070 [ 17.902261][ T296] neigh_resolve_output+0xbe/0x140 [ 17.902368][ T296] ip6_finish_output2+0x423/0x1300 [ 17.902466][ T296] ip6_finish_output+0x646/0xda0 [ 17.902606][ T296] ip6_output+0x23f/0x7f0 [ 17.902706][ T296] ip6_forward+0x10f4/0x2bd0 [ 17.902804][ T296] ipv6_rcv+0x3c1/0x5a0 [ 17.902950][ T296] __netif_receive_skb_one_core+0xfc/0x180 [ 17.903070][ T296] process_backlog+0x2bc/0x1490 [ 17.903170][ T296] __napi_poll+0xa7/0x3b0 [ 17.903316][ T296] net_rx_action+0x513/0xf50 [ 17.903416][ T296] handle_softirqs+0x1d8/0x940 [ 17.903521][ T296] do_softirq+0xa9/0xe0 [ 17.903664][ T296] __local_bh_enable_ip+0x113/0x140 [ 17.903763][ T296] __neigh_event_send+0x30a/0x1070 [ 17.903863][ T296] neigh_resolve_output+0xbe/0x140 [ 17.903968][ T296] ip6_finish_output2+0x423/0x1300 [ 17.904112][ T296] ip6_finish_output+0x646/0xda0 [ 17.904220][ T296] ip6_output+0x23f/0x7f0 [ 17.904320][ T296] ip6_send_skb+0xee/0x350 [ 17.904459][ T296] rawv6_push_pending_frames+0x4cb/0xa90 [ 17.904577][ T296] rawv6_sendmsg+0x1434/0x1a50 [ 17.904676][ T296] __sys_sendto+0x2c9/0x400 [ 17.904817][ T296] __x64_sys_sendto+0xe4/0x1f0 [ 17.904921][ T296] do_syscall_64+0x117/0x590 [ 17.905030][ T296] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 17.905190][ T296] INITIAL USE at: [ 17.905251][ T296] __lock_acquire+0x378/0xc10 [ 17.905350][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.905495][ T296] _raw_write_lock_bh+0x38/0x50 [ 17.905596][ T296] addrconf_permanent_addr+0x108/0x9c0 [ 17.905718][ T296] addrconf_notify+0x151/0xf30 [ 17.905860][ T296] notifier_call_chain+0xb0/0x320 [ 17.905973][ T296] __dev_notify_flags+0xde/0x280 [ 17.906075][ T296] netif_change_flags+0xfe/0x190 [ 17.906178][ T296] do_setlink.isra.0+0x1cc3/0x2750 [ 17.906277][ T296] rtnl_newlink+0x8d1/0xef0 [ 17.906375][ T296] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 17.906477][ T296] netlink_rcv_skb+0x14e/0x3a0 [ 17.906619][ T296] netlink_unicast+0x486/0x750 [ 17.906724][ T296] netlink_sendmsg+0x735/0xc60 [ 17.906824][ T296] ____sys_sendmsg+0x419/0x850 [ 17.906975][ T296] ___sys_sendmsg+0x14e/0x1d0 [ 17.907075][ T296] __sys_sendmsg+0x145/0x1f0 [ 17.907176][ T296] do_syscall_64+0x117/0x590 [ 17.907319][ T296] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 17.907440][ T296] INITIAL READ USE at: [ 17.907519][ T296] __lock_acquire+0x378/0xc10 [ 17.907660][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.907778][ T296] _raw_read_lock_bh+0x44/0x80 [ 17.907877][ T296] inet6_fill_ifla6_attrs+0x1aee/0x21e0 [ 17.908043][ T296] inet6_fill_link_af+0x5c/0xe0 [ 17.908143][ T296] rtnl_fill_ifinfo.isra.0+0x1a45/0x2c20 [ 17.908266][ T296] rtnl_getlink+0x9c9/0xeb0 [ 17.908406][ T296] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 17.908507][ T296] netlink_rcv_skb+0x14e/0x3a0 [ 17.908618][ T296] netlink_unicast+0x486/0x750 [ 17.908760][ T296] netlink_sendmsg+0x735/0xc60 [ 17.908865][ T296] ____sys_sendmsg+0x419/0x850 [ 17.908974][ T296] ___sys_sendmsg+0x14e/0x1d0 [ 17.909073][ T296] __sys_sendmsg+0x145/0x1f0 [ 17.909221][ T296] do_syscall_64+0x117/0x590 [ 17.909327][ T296] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 17.909449][ T296] } [ 17.909531][ T296] ... key at: [] __key.37+0x0/0x40 [ 17.909654][ T296] ... acquired at: [ 17.909716][ T296] __lock_acquire+0x508/0xc10 [ 17.909801][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.909922][ T296] _raw_spin_lock+0x33/0x40 [ 17.910009][ T296] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 17.910109][ T296] __ipv6_dev_ac_inc+0x57e/0x930 [ 17.910190][ T296] addrconf_join_anycast+0x1bc/0x260 [ 17.910271][ T296] __ipv6_ifa_notify+0x75b/0xad0 [ 17.910355][ T296] addrconf_dad_completed+0x14b/0xe10 [ 17.910438][ T296] addrconf_dad_work+0x3c1/0x930 [ 17.910519][ T296] process_one_work+0xdf8/0x1410 [ 17.910642][ T296] worker_thread+0x4f1/0xd60 [ 17.910728][ T296] kthread+0x367/0x460 [ 17.910795][ T296] ret_from_fork+0x474/0x6b0 [ 17.910877][ T296] ret_from_fork_asm+0x11/0x20 [ 17.911006][ T296] [ 17.911053][ T296] -> (acaddr_hash_lock){+.+.}-{3:3} { [ 17.911135][ T296] HARDIRQ-ON-W at: [ 17.911195][ T296] __lock_acquire+0x378/0xc10 [ 17.911338][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.911440][ T296] _raw_spin_lock+0x33/0x40 [ 17.911540][ T296] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 17.911713][ T296] __ipv6_dev_ac_inc+0x57e/0x930 [ 17.911814][ T296] addrconf_join_anycast+0x1bc/0x260 [ 17.911914][ T296] __ipv6_ifa_notify+0x75b/0xad0 [ 17.912019][ T296] addrconf_dad_completed+0x14b/0xe10 [ 17.912161][ T296] addrconf_dad_work+0x3c1/0x930 [ 17.912265][ T296] process_one_work+0xdf8/0x1410 [ 17.912367][ T296] worker_thread+0x4f1/0xd60 [ 17.912510][ T296] kthread+0x367/0x460 [ 17.912590][ T296] ret_from_fork+0x474/0x6b0 [ 17.912690][ T296] ret_from_fork_asm+0x11/0x20 [ 17.912831][ T296] SOFTIRQ-ON-W at: [ 17.912896][ T296] __lock_acquire+0x378/0xc10 [ 17.913001][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.913098][ T296] _raw_spin_lock+0x33/0x40 [ 17.913239][ T296] __ipv6_dev_ac_dec+0x236/0x5d0 [ 17.913339][ T296] addrconf_leave_anycast+0x1bc/0x260 [ 17.913441][ T296] dev_forward_change+0x3b3/0x850 [ 17.913590][ T296] addrconf_fixup_forwarding+0x2af/0x4d0 [ 17.913709][ T296] addrconf_sysctl_forward+0x209/0x2b0 [ 17.913809][ T296] proc_sys_call_handler+0x31b/0x480 [ 17.913961][ T296] new_sync_write+0x333/0x750 [ 17.914062][ T296] vfs_write+0x6a4/0xc10 [ 17.914166][ T296] ksys_write+0x116/0x250 [ 17.914306][ T296] do_syscall_64+0x117/0x590 [ 17.914405][ T296] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 17.914534][ T296] INITIAL USE at: [ 17.914596][ T296] __lock_acquire+0x378/0xc10 [ 17.914745][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.914857][ T296] _raw_spin_lock+0x33/0x40 [ 17.914972][ T296] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 17.915143][ T296] __ipv6_dev_ac_inc+0x57e/0x930 [ 17.915246][ T296] addrconf_join_anycast+0x1bc/0x260 [ 17.915351][ T296] __ipv6_ifa_notify+0x75b/0xad0 [ 17.915503][ T296] addrconf_dad_completed+0x14b/0xe10 [ 17.915617][ T296] addrconf_dad_work+0x3c1/0x930 [ 17.915729][ T296] process_one_work+0xdf8/0x1410 [ 17.915879][ T296] worker_thread+0x4f1/0xd60 [ 17.915989][ T296] kthread+0x367/0x460 [ 17.916076][ T296] ret_from_fork+0x474/0x6b0 [ 17.916226][ T296] ret_from_fork_asm+0x11/0x20 [ 17.916335][ T296] } [ 17.916377][ T296] ... key at: [] acaddr_hash_lock+0x18/0x45a0 [ 17.916513][ T296] ... acquired at: [ 17.916615][ T296] mark_lock+0x1d7/0xa00 [ 17.916704][ T296] mark_usage+0x105/0x170 [ 17.916794][ T296] __lock_acquire+0x378/0xc10 [ 17.916884][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.917018][ T296] _raw_spin_lock+0x33/0x40 [ 17.917106][ T296] __ipv6_dev_ac_dec+0x236/0x5d0 [ 17.917188][ T296] addrconf_leave_anycast+0x1bc/0x260 [ 17.917270][ T296] dev_forward_change+0x3b3/0x850 [ 17.917392][ T296] addrconf_fixup_forwarding+0x2af/0x4d0 [ 17.917497][ T296] addrconf_sysctl_forward+0x209/0x2b0 [ 17.917582][ T296] proc_sys_call_handler+0x31b/0x480 [ 17.917670][ T296] new_sync_write+0x333/0x750 [ 17.917800][ T296] vfs_write+0x6a4/0xc10 [ 17.917888][ T296] ksys_write+0x116/0x250 [ 17.917975][ T296] do_syscall_64+0x117/0x590 [ 17.918063][ T296] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 17.918213][ T296] [ 17.918258][ T296] [ 17.918258][ T296] stack backtrace: [ 17.918370][ T296] CPU: 0 UID: 0 PID: 296 Comm: sysctl Not tainted 7.1.0-rc5-virtme #1 PREEMPT(full) [ 17.918373][ T296] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 17.918375][ T296] Call Trace: [ 17.918376][ T296] [ 17.918378][ T296] dump_stack_lvl+0x6f/0xa0 [ 17.918382][ T296] print_irq_inversion_bug.part.0.cold+0xe6/0x143 [ 17.918385][ T296] mark_lock_irq+0x989/0x9c0 [ 17.918388][ T296] mark_lock+0x1d7/0xa00 [ 17.918389][ T296] mark_usage+0x105/0x170 [ 17.918391][ T296] __lock_acquire+0x378/0xc10 [ 17.918393][ T296] lock_acquire.part.0+0xbc/0x260 [ 17.918394][ T296] ? __ipv6_dev_ac_dec+0x236/0x5d0 [ 17.918396][ T296] ? rcu_is_watching+0x15/0xd0 [ 17.918399][ T296] ? do_raw_read_unlock+0x70/0x70 [ 17.918401][ T296] ? lock_acquire+0x134/0x160 [ 17.918403][ T296] _raw_spin_lock+0x33/0x40 [ 17.918404][ T296] ? __ipv6_dev_ac_dec+0x236/0x5d0 [ 17.918406][ T296] __ipv6_dev_ac_dec+0x236/0x5d0 [ 17.918408][ T296] addrconf_leave_anycast+0x1bc/0x260 [ 17.918409][ T296] ? find_held_lock+0x2b/0x80 [ 17.918412][ T296] ? __ipv6_isatap_ifid+0x210/0x210 [ 17.918414][ T296] ? mark_held_locks+0x40/0x70 [ 17.918416][ T296] ? lockdep_hardirqs_on+0x8c/0x130 [ 17.918418][ T296] dev_forward_change+0x3b3/0x850 [ 17.918420][ T296] ? addrconf_fixup_forwarding+0x4d/0x4d0 [ 17.918422][ T296] ? addrconf_sysctl_proxy_ndp+0x2f0/0x2f0 [ 17.918425][ T296] addrconf_fixup_forwarding+0x2af/0x4d0 [ 17.918428][ T296] addrconf_sysctl_forward+0x209/0x2b0 [ 17.918430][ T296] ? addrconf_fixup_forwarding+0x4d0/0x4d0 [ 17.918432][ T296] ? addrconf_fixup_forwarding+0x4d0/0x4d0 [ 17.918434][ T296] ? __kvmalloc_node_noprof+0x305/0x8a0 [ 17.918437][ T296] ? proc_sys_call_handler+0x25d/0x480 [ 17.918439][ T296] proc_sys_call_handler+0x31b/0x480 [ 17.918442][ T296] ? proc_sys_lookup+0x3d0/0x3d0 [ 17.918444][ T296] ? do_fault_around+0x300/0x5a0 [ 17.918446][ T296] ? find_held_lock+0x2b/0x80 [ 17.918448][ T296] ? rcu_lockdep_current_cpu_online+0x39/0x1b0 [ 17.918450][ T296] ? rcu_read_lock_any_held+0x3c/0x90 [ 17.918452][ T296] ? proc_sys_call_handler+0x480/0x480 [ 17.918454][ T296] new_sync_write+0x333/0x750 [ 17.918455][ T296] ? __lock_acquire+0x508/0xc10 [ 17.918457][ T296] ? new_sync_read+0x740/0x740 [ 17.918459][ T296] ? lock_acquire.part.0+0xbc/0x260 [ 17.918460][ T296] ? ksys_write+0x116/0x250 [ 17.918462][ T296] vfs_write+0x6a4/0xc10 [ 17.918464][ T296] ksys_write+0x116/0x250 [ 17.918466][ T296] ? __ia32_sys_read+0xc0/0xc0 [ 17.918467][ T296] ? rcu_is_watching+0x15/0xd0 [ 17.918469][ T296] ? rcu_is_watching+0x15/0xd0 [ 17.918470][ T296] do_syscall_64+0x117/0x590 [ 17.918472][ T296] ? trace_hardirqs_off+0xd/0x30 [ 17.918475][ T296] ? exc_page_fault+0xee/0x100 [ 17.918477][ T296] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 17.918479][ T296] RIP: 0033:0x7f3d6ca7408e [ 17.918482][ T296] Code: 4d 89 d8 e8 94 bd 00 00 4c 8b 5d f8 41 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 11 c9 c3 0f 1f 80 00 00 00 00 48 8b 45 10 0f 05 c3 83 e2 39 83 fa 08 75 e7 e8 03 ff ff ff 0f 1f 00 f3 0f 1e fa [ 17.918483][ T296] RSP: 002b:00007ffe699f2110 EFLAGS: 00000202 ORIG_RAX: 0000000000000001 [ 17.918486][ T296] RAX: ffffffffffffffda RBX: 0000000000000002 RCX: 00007f3d6ca7408e [ 17.918488][ T296] RDX: 0000000000000002 RSI: 000055c501a4b4b0 RDI: 0000000000000005 [ 17.918489][ T296] RBP: 00007ffe699f2120 R08: 0000000000000000 R09: 0000000000000000 [ 17.918489][ T296] R10: 0000000000000000 R11: 0000000000000202 R12: 000055c501a4d5e0 [ 17.918490][ T296] R13: 000055c501a4b470 R14: 0000000000000002 R15: 0000000000000000 [ 17.918492][ T296]