[ 242.160812][ T1839] [ 242.160889][ T1839] ======================================================== [ 242.160994][ T1839] WARNING: possible irq lock inversion dependency detected [ 242.161093][ T1839] 7.1.0-rc5-virtme #1 Not tainted [ 242.161161][ T1839] -------------------------------------------------------- [ 242.161260][ T1839] sysctl/1839 just changed the state of lock: [ 242.161347][ T1839] ffffffff8597e8b8 (acaddr_hash_lock){+.+.}-{3:3}, at: __ipv6_dev_ac_dec+0x236/0x5d0 [ 242.161473][ T1839] but this lock was taken by another, SOFTIRQ-READ-safe lock in the past: [ 242.161571][ T1839] (&ndev->lock){++.-}-{3:3} [ 242.161573][ T1839] [ 242.161573][ T1839] [ 242.161573][ T1839] and interrupts could create inverse lock ordering between them. [ 242.161573][ T1839] [ 242.161824][ T1839] [ 242.161824][ T1839] other info that might help us debug this: [ 242.161921][ T1839] Possible interrupt unsafe locking scenario: [ 242.161921][ T1839] [ 242.162020][ T1839] CPU0 CPU1 [ 242.162085][ T1839] ---- ---- [ 242.162152][ T1839] lock(acaddr_hash_lock); [ 242.162220][ T1839] local_irq_disable(); [ 242.162343][ T1839] lock(&ndev->lock); [ 242.162426][ T1839] lock(acaddr_hash_lock); [ 242.162508][ T1839] [ 242.162598][ T1839] lock(&ndev->lock); [ 242.162650][ T1839] [ 242.162650][ T1839] *** DEADLOCK *** [ 242.162650][ T1839] [ 242.162747][ T1839] 2 locks held by sysctl/1839: [ 242.162824][ T1839] #0: ff11000009c943e0 (sb_writers#3){.+.+}-{0:0}, at: ksys_write+0x116/0x250 [ 242.162988][ T1839] #1: ffffffff8588c9c0 (rtnl_mutex){+.+.}-{4:4}, at: addrconf_fixup_forwarding+0x4d/0x4d0 [ 242.163121][ T1839] [ 242.163121][ T1839] the shortest dependencies between 2nd lock and 1st lock: [ 242.163274][ T1839] -> (&ndev->lock){++.-}-{3:3} { [ 242.163345][ T1839] HARDIRQ-ON-W at: [ 242.163403][ T1839] __lock_acquire+0x378/0xc10 [ 242.163534][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.163616][ T1839] _raw_write_lock_bh+0x38/0x50 [ 242.163699][ T1839] addrconf_permanent_addr+0x108/0x9c0 [ 242.163845][ T1839] addrconf_notify+0x151/0xf30 [ 242.163933][ T1839] notifier_call_chain+0xb0/0x320 [ 242.164016][ T1839] __dev_notify_flags+0xde/0x280 [ 242.164100][ T1839] netif_change_flags+0xfe/0x190 [ 242.164226][ T1839] do_setlink.isra.0+0x1cc3/0x2750 [ 242.164309][ T1839] rtnl_newlink+0x8d1/0xef0 [ 242.164389][ T1839] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 242.164513][ T1839] netlink_rcv_skb+0x14e/0x3a0 [ 242.164596][ T1839] netlink_unicast+0x486/0x750 [ 242.164680][ T1839] netlink_sendmsg+0x735/0xc60 [ 242.164812][ T1839] ____sys_sendmsg+0x419/0x850 [ 242.164895][ T1839] ___sys_sendmsg+0x14e/0x1d0 [ 242.164979][ T1839] __sys_sendmsg+0x145/0x1f0 [ 242.165103][ T1839] do_syscall_64+0x117/0x590 [ 242.165185][ T1839] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 242.165284][ T1839] HARDIRQ-ON-R at: [ 242.165336][ T1839] __lock_acquire+0x378/0xc10 [ 242.165457][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.165539][ T1839] _raw_read_lock_bh+0x44/0x80 [ 242.165621][ T1839] inet6_fill_ifla6_attrs+0x1aee/0x21e0 [ 242.165787][ T1839] inet6_fill_link_af+0x5c/0xe0 [ 242.165881][ T1839] rtnl_fill_ifinfo.isra.0+0x1a45/0x2c20 [ 242.165985][ T1839] rtnl_getlink+0x9c9/0xeb0 [ 242.166109][ T1839] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 242.166198][ T1839] netlink_rcv_skb+0x14e/0x3a0 [ 242.166281][ T1839] netlink_unicast+0x486/0x750 [ 242.166405][ T1839] netlink_sendmsg+0x735/0xc60 [ 242.166489][ T1839] ____sys_sendmsg+0x419/0x850 [ 242.166571][ T1839] ___sys_sendmsg+0x14e/0x1d0 [ 242.166696][ T1839] __sys_sendmsg+0x145/0x1f0 [ 242.166785][ T1839] do_syscall_64+0x117/0x590 [ 242.166866][ T1839] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 242.167005][ T1839] IN-SOFTIRQ-R at: [ 242.167055][ T1839] __lock_acquire+0x378/0xc10 [ 242.167140][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.167222][ T1839] _raw_read_lock_bh+0x44/0x80 [ 242.167347][ T1839] ipv6_get_lladdr+0xa8/0x3f0 [ 242.167434][ T1839] ndisc_send_ns+0xf3/0x120 [ 242.167520][ T1839] ndisc_solicit+0x314/0x480 [ 242.167644][ T1839] neigh_probe+0xb3/0x100 [ 242.167728][ T1839] __neigh_event_send+0x802/0x1070 [ 242.167819][ T1839] neigh_resolve_output+0xbe/0x140 [ 242.167948][ T1839] ip6_finish_output2+0x423/0x1300 [ 242.168034][ T1839] ip6_finish_output+0x646/0xda0 [ 242.168118][ T1839] ip6_output+0x23f/0x7f0 [ 242.168243][ T1839] ip6_forward+0x10f4/0x2bd0 [ 242.168325][ T1839] ipv6_rcv+0x3c1/0x5a0 [ 242.168411][ T1839] __netif_receive_skb_one_core+0xfc/0x180 [ 242.168551][ T1839] process_backlog+0x2bc/0x1490 [ 242.168636][ T1839] __napi_poll+0xa7/0x3b0 [ 242.168718][ T1839] net_rx_action+0x513/0xf50 [ 242.168849][ T1839] handle_softirqs+0x1d8/0x940 [ 242.168934][ T1839] do_softirq+0xa9/0xe0 [ 242.169017][ T1839] __local_bh_enable_ip+0x113/0x140 [ 242.169101][ T1839] __neigh_event_send+0x30a/0x1070 [ 242.169226][ T1839] neigh_resolve_output+0xbe/0x140 [ 242.169313][ T1839] ip6_finish_output2+0x423/0x1300 [ 242.169395][ T1839] ip6_finish_output+0x646/0xda0 [ 242.169522][ T1839] ip6_output+0x23f/0x7f0 [ 242.169606][ T1839] ip6_send_skb+0xee/0x350 [ 242.169690][ T1839] rawv6_push_pending_frames+0x4cb/0xa90 [ 242.169854][ T1839] rawv6_sendmsg+0x1434/0x1a50 [ 242.169940][ T1839] __sys_sendto+0x2c9/0x400 [ 242.170026][ T1839] __x64_sys_sendto+0xe4/0x1f0 [ 242.170152][ T1839] do_syscall_64+0x117/0x590 [ 242.170235][ T1839] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 242.170334][ T1839] INITIAL USE at: [ 242.170423][ T1839] __lock_acquire+0x378/0xc10 [ 242.170508][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.170596][ T1839] _raw_write_lock_bh+0x38/0x50 [ 242.170685][ T1839] addrconf_permanent_addr+0x108/0x9c0 [ 242.170834][ T1839] addrconf_notify+0x151/0xf30 [ 242.170918][ T1839] notifier_call_chain+0xb0/0x320 [ 242.171001][ T1839] __dev_notify_flags+0xde/0x280 [ 242.171124][ T1839] netif_change_flags+0xfe/0x190 [ 242.171209][ T1839] do_setlink.isra.0+0x1cc3/0x2750 [ 242.171291][ T1839] rtnl_newlink+0x8d1/0xef0 [ 242.171415][ T1839] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 242.171498][ T1839] netlink_rcv_skb+0x14e/0x3a0 [ 242.171581][ T1839] netlink_unicast+0x486/0x750 [ 242.171709][ T1839] netlink_sendmsg+0x735/0xc60 [ 242.171797][ T1839] ____sys_sendmsg+0x419/0x850 [ 242.171880][ T1839] ___sys_sendmsg+0x14e/0x1d0 [ 242.172004][ T1839] __sys_sendmsg+0x145/0x1f0 [ 242.172087][ T1839] do_syscall_64+0x117/0x590 [ 242.172169][ T1839] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 242.172311][ T1839] INITIAL READ USE at: [ 242.172377][ T1839] __lock_acquire+0x378/0xc10 [ 242.172460][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.172598][ T1839] _raw_read_lock_bh+0x44/0x80 [ 242.172680][ T1839] inet6_fill_ifla6_attrs+0x1aee/0x21e0 [ 242.172785][ T1839] inet6_fill_link_af+0x5c/0xe0 [ 242.172908][ T1839] rtnl_fill_ifinfo.isra.0+0x1a45/0x2c20 [ 242.173009][ T1839] rtnl_getlink+0x9c9/0xeb0 [ 242.173090][ T1839] rtnetlink_rcv_msg+0x6fd/0xbd0 [ 242.173215][ T1839] netlink_rcv_skb+0x14e/0x3a0 [ 242.173298][ T1839] netlink_unicast+0x486/0x750 [ 242.173379][ T1839] netlink_sendmsg+0x735/0xc60 [ 242.173463][ T1839] ____sys_sendmsg+0x419/0x850 [ 242.173587][ T1839] ___sys_sendmsg+0x14e/0x1d0 [ 242.173670][ T1839] __sys_sendmsg+0x145/0x1f0 [ 242.173759][ T1839] do_syscall_64+0x117/0x590 [ 242.173882][ T1839] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 242.173979][ T1839] } [ 242.174014][ T1839] ... key at: [] __key.37+0x0/0x40 [ 242.174156][ T1839] ... acquired at: [ 242.174208][ T1839] __lock_acquire+0x508/0xc10 [ 242.174277][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.174344][ T1839] _raw_spin_lock+0x33/0x40 [ 242.174449][ T1839] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 242.174531][ T1839] __ipv6_dev_ac_inc+0x57e/0x930 [ 242.174597][ T1839] addrconf_join_anycast+0x1bc/0x260 [ 242.174662][ T1839] __ipv6_ifa_notify+0x75b/0xad0 [ 242.174773][ T1839] addrconf_dad_completed+0x14b/0xe10 [ 242.174839][ T1839] addrconf_dad_work+0x3c1/0x930 [ 242.174904][ T1839] process_one_work+0xdf8/0x1410 [ 242.174971][ T1839] worker_thread+0x4f1/0xd60 [ 242.175076][ T1839] kthread+0x367/0x460 [ 242.175125][ T1839] ret_from_fork+0x474/0x6b0 [ 242.175193][ T1839] ret_from_fork_asm+0x11/0x20 [ 242.175260][ T1839] [ 242.175295][ T1839] -> (acaddr_hash_lock){+.+.}-{3:3} { [ 242.175405][ T1839] HARDIRQ-ON-W at: [ 242.175454][ T1839] __lock_acquire+0x378/0xc10 [ 242.175536][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.175619][ T1839] _raw_spin_lock+0x33/0x40 [ 242.175741][ T1839] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 242.175844][ T1839] __ipv6_dev_ac_inc+0x57e/0x930 [ 242.175926][ T1839] addrconf_join_anycast+0x1bc/0x260 [ 242.176048][ T1839] __ipv6_ifa_notify+0x75b/0xad0 [ 242.176129][ T1839] addrconf_dad_completed+0x14b/0xe10 [ 242.176213][ T1839] addrconf_dad_work+0x3c1/0x930 [ 242.176336][ T1839] process_one_work+0xdf8/0x1410 [ 242.176418][ T1839] worker_thread+0x4f1/0xd60 [ 242.176501][ T1839] kthread+0x367/0x460 [ 242.176608][ T1839] ret_from_fork+0x474/0x6b0 [ 242.176689][ T1839] ret_from_fork_asm+0x11/0x20 [ 242.176777][ T1839] SOFTIRQ-ON-W at: [ 242.176826][ T1839] __lock_acquire+0x378/0xc10 [ 242.176951][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.177033][ T1839] _raw_spin_lock+0x33/0x40 [ 242.177116][ T1839] __ipv6_dev_ac_dec+0x236/0x5d0 [ 242.177242][ T1839] addrconf_leave_anycast+0x1bc/0x260 [ 242.177324][ T1839] dev_forward_change+0x3b3/0x850 [ 242.177408][ T1839] addrconf_fixup_forwarding+0x2af/0x4d0 [ 242.177547][ T1839] addrconf_sysctl_forward+0x209/0x2b0 [ 242.177629][ T1839] proc_sys_call_handler+0x31b/0x480 [ 242.177713][ T1839] new_sync_write+0x333/0x750 [ 242.177843][ T1839] vfs_write+0x6a4/0xc10 [ 242.177925][ T1839] ksys_write+0x116/0x250 [ 242.178008][ T1839] do_syscall_64+0x117/0x590 [ 242.178131][ T1839] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 242.178231][ T1839] INITIAL USE at: [ 242.178280][ T1839] __lock_acquire+0x378/0xc10 [ 242.178362][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.178485][ T1839] _raw_spin_lock+0x33/0x40 [ 242.178571][ T1839] ipv6_add_acaddr_hash.isra.0+0x16d/0x350 [ 242.178671][ T1839] __ipv6_dev_ac_inc+0x57e/0x930 [ 242.178797][ T1839] addrconf_join_anycast+0x1bc/0x260 [ 242.178879][ T1839] __ipv6_ifa_notify+0x75b/0xad0 [ 242.178961][ T1839] addrconf_dad_completed+0x14b/0xe10 [ 242.179085][ T1839] addrconf_dad_work+0x3c1/0x930 [ 242.179168][ T1839] process_one_work+0xdf8/0x1410 [ 242.179250][ T1839] worker_thread+0x4f1/0xd60 [ 242.179374][ T1839] kthread+0x367/0x460 [ 242.179441][ T1839] ret_from_fork+0x474/0x6b0 [ 242.179523][ T1839] ret_from_fork_asm+0x11/0x20 [ 242.179607][ T1839] } [ 242.179680][ T1839] ... key at: [] acaddr_hash_lock+0x18/0x45a0 [ 242.179786][ T1839] ... acquired at: [ 242.179834][ T1839] mark_lock+0x1d7/0xa00 [ 242.179899][ T1839] mark_usage+0x105/0x170 [ 242.180004][ T1839] __lock_acquire+0x378/0xc10 [ 242.180068][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.180134][ T1839] _raw_spin_lock+0x33/0x40 [ 242.180200][ T1839] __ipv6_dev_ac_dec+0x236/0x5d0 [ 242.180306][ T1839] addrconf_leave_anycast+0x1bc/0x260 [ 242.180372][ T1839] dev_forward_change+0x3b3/0x850 [ 242.180437][ T1839] addrconf_fixup_forwarding+0x2af/0x4d0 [ 242.180518][ T1839] addrconf_sysctl_forward+0x209/0x2b0 [ 242.180624][ T1839] proc_sys_call_handler+0x31b/0x480 [ 242.180690][ T1839] new_sync_write+0x333/0x750 [ 242.180758][ T1839] vfs_write+0x6a4/0xc10 [ 242.180824][ T1839] ksys_write+0x116/0x250 [ 242.180929][ T1839] do_syscall_64+0x117/0x590 [ 242.180994][ T1839] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 242.181074][ T1839] [ 242.181107][ T1839] [ 242.181107][ T1839] stack backtrace: [ 242.181228][ T1839] CPU: 2 UID: 0 PID: 1839 Comm: sysctl Not tainted 7.1.0-rc5-virtme #1 PREEMPT(full) [ 242.181231][ T1839] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 242.181233][ T1839] Call Trace: [ 242.181234][ T1839] [ 242.181235][ T1839] dump_stack_lvl+0x6f/0xa0 [ 242.181239][ T1839] print_irq_inversion_bug.part.0.cold+0xe6/0x143 [ 242.181242][ T1839] mark_lock_irq+0x989/0x9c0 [ 242.181245][ T1839] mark_lock+0x1d7/0xa00 [ 242.181247][ T1839] mark_usage+0x105/0x170 [ 242.181248][ T1839] __lock_acquire+0x378/0xc10 [ 242.181250][ T1839] lock_acquire.part.0+0xbc/0x260 [ 242.181252][ T1839] ? __ipv6_dev_ac_dec+0x236/0x5d0 [ 242.181253][ T1839] ? rcu_is_watching+0x15/0xd0 [ 242.181256][ T1839] ? do_raw_read_unlock+0x70/0x70 [ 242.181258][ T1839] ? lock_acquire+0x134/0x160 [ 242.181259][ T1839] _raw_spin_lock+0x33/0x40 [ 242.181261][ T1839] ? __ipv6_dev_ac_dec+0x236/0x5d0 [ 242.181262][ T1839] __ipv6_dev_ac_dec+0x236/0x5d0 [ 242.181264][ T1839] addrconf_leave_anycast+0x1bc/0x260 [ 242.181266][ T1839] ? find_held_lock+0x2b/0x80 [ 242.181268][ T1839] ? __ipv6_isatap_ifid+0x210/0x210 [ 242.181270][ T1839] ? mark_held_locks+0x40/0x70 [ 242.181272][ T1839] ? lockdep_hardirqs_on+0x8c/0x130 [ 242.181274][ T1839] dev_forward_change+0x3b3/0x850 [ 242.181276][ T1839] ? addrconf_fixup_forwarding+0x4d/0x4d0 [ 242.181278][ T1839] ? addrconf_sysctl_proxy_ndp+0x2f0/0x2f0 [ 242.181281][ T1839] addrconf_fixup_forwarding+0x2af/0x4d0 [ 242.181283][ T1839] addrconf_sysctl_forward+0x209/0x2b0 [ 242.181285][ T1839] ? addrconf_fixup_forwarding+0x4d0/0x4d0 [ 242.181287][ T1839] ? addrconf_fixup_forwarding+0x4d0/0x4d0 [ 242.181289][ T1839] ? __kvmalloc_node_noprof+0x305/0x8a0 [ 242.181292][ T1839] ? proc_sys_call_handler+0x25d/0x480 [ 242.181294][ T1839] proc_sys_call_handler+0x31b/0x480 [ 242.181296][ T1839] ? proc_sys_lookup+0x3d0/0x3d0 [ 242.181298][ T1839] ? rcu_read_unlock+0x1b/0x70 [ 242.181301][ T1839] ? do_raw_spin_unlock+0x59/0x250 [ 242.181302][ T1839] ? rcu_lockdep_current_cpu_online+0x39/0x1b0 [ 242.181304][ T1839] ? rcu_read_lock_any_held+0x3c/0x90 [ 242.181306][ T1839] ? proc_sys_call_handler+0x480/0x480 [ 242.181308][ T1839] new_sync_write+0x333/0x750 [ 242.181309][ T1839] ? __lock_acquire+0x508/0xc10 [ 242.181311][ T1839] ? new_sync_read+0x740/0x740 [ 242.181312][ T1839] ? lock_acquire.part.0+0xbc/0x260 [ 242.181313][ T1839] ? ksys_write+0x116/0x250 [ 242.181315][ T1839] vfs_write+0x6a4/0xc10 [ 242.181317][ T1839] ksys_write+0x116/0x250 [ 242.181319][ T1839] ? __ia32_sys_read+0xc0/0xc0 [ 242.181320][ T1839] ? rcu_is_watching+0x15/0xd0 [ 242.181322][ T1839] ? rcu_is_watching+0x15/0xd0 [ 242.181323][ T1839] do_syscall_64+0x117/0x590 [ 242.181325][ T1839] ? trace_hardirqs_off+0xd/0x30 [ 242.181327][ T1839] ? exc_page_fault+0xee/0x100 [ 242.181329][ T1839] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 242.181330][ T1839] RIP: 0033:0x7fcc7579c08e [ 242.181333][ T1839] 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 [ 242.181335][ T1839] RSP: 002b:00007ffe4b0d49f0 EFLAGS: 00000202 ORIG_RAX: 0000000000000001 [ 242.181338][ T1839] RAX: ffffffffffffffda RBX: 0000000000000002 RCX: 00007fcc7579c08e [ 242.181339][ T1839] RDX: 0000000000000002 RSI: 000056038cdb04b0 RDI: 0000000000000005 [ 242.181340][ T1839] RBP: 00007ffe4b0d4a00 R08: 0000000000000000 R09: 0000000000000000 [ 242.181341][ T1839] R10: 0000000000000000 R11: 0000000000000202 R12: 000056038cdb25e0 [ 242.181342][ T1839] R13: 000056038cdb0470 R14: 0000000000000002 R15: 0000000000000000 [ 242.181344][ T1839]