====================================== | [ 1364.686661][ C0] #4: ffff888009183358 (&br->multicast_lock){+.-.}-{3:3}, at: br_multicast_port_query_expired (./include/trace/events/../../../net/bridge/br_private.h:1293 ./include/trace/events/../../../net/bridge/br_private.h:1302 net/bridge/br_multicast.c:1906) bridge | [ 1364.687191][ C0] #5: ffffffffa535b5c0 (rcu_read_lock_bh){....}-{1:3}, at: __dev_queue_xmit (./include/linux/bottom_half.h:20 ./include/linux/rcupdate.h:901 net/core/dev.c:4555) | [ 1364.687549][ C0] | [ 1364.687549][ C0] stack backtrace: [ 1364.687808][ C0] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 1364.687811][ C0] Workqueue: events_unbound linkwatch_event [ 1364.687817][ C0] Call Trace: [ 1364.687818][ C0] [ 1364.687822][ C0] dump_stack_lvl (lib/dump_stack.c:123) [ 1364.687831][ C0] lockdep_rcu_suspicious (kernel/locking/lockdep.c:6848) [ 1364.687842][ C0] dev_hard_start_xmit (./include/net/net_namespace.h:418 ./include/linux/netdevice.h:2695 net/core/dev.c:2466 net/core/dev.c:3772 net/core/dev.c:3793) [ 1364.687854][ C0] __dev_queue_xmit (net/core/dev.h:340 net/core/dev.c:4631) [ 1364.687864][ C0] ? __build_skb_around (./arch/x86/include/asm/atomic.h:28 ./include/linux/atomic/atomic-arch-fallback.h:503 ./include/linux/atomic/atomic-instrumented.h:68 net/core/skbuff.c:381 net/core/skbuff.c:439) [ 1364.687876][ C0] ? __pfx___dev_queue_xmit (net/core/dev.c:4538) [ 1364.687879][ C0] ? __pfx___alloc_skb (net/core/skbuff.c:642) [ 1364.687885][ C0] ? stack_trace_save (kernel/stacktrace.c:114) [ 1364.687891][ C0] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 1364.687900][ C0] ? __pfx___br_multicast_query_handle_vlan (net/bridge/br_multicast.c:909) bridge [ 1364.687951][ C0] br_dev_queue_push_xmit (net/bridge/br_forward.c:34) bridge [ 1364.687984][ C0] ? __pfx_br_dev_queue_push_xmit (net/bridge/br_forward.c:34) bridge [ 1364.688017][ C0] ? br_multicast_count (./arch/x86/include/asm/bitops.h:206 ./arch/x86/include/asm/bitops.h:238 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 ./include/trace/events/../../../net/bridge/br_private.h:764 net/bridge/br_multicast.c:5052) bridge [ 1364.688059][ C0] __br_multicast_send_query (net/bridge/br_multicast.c:1813) bridge [ 1364.688104][ C0] ? __pfx___br_multicast_send_query (net/bridge/br_multicast.c:1789) bridge [ 1364.688144][ C0] ? __lock_acquire (kernel/locking/lockdep.c:5228) [ 1364.688156][ C0] ? br_multicast_send_query (net/bridge/br_multicast.c:1891) bridge [ 1364.688190][ C0] br_multicast_send_query (net/bridge/br_multicast.c:1891) bridge [ 1364.688229][ C0] ? __pfx_br_multicast_send_query (net/bridge/br_multicast.c:1852) bridge [ 1364.688262][ C0] ? br_multicast_port_query_expired (./include/trace/events/../../../net/bridge/br_private.h:1293 ./include/trace/events/../../../net/bridge/br_private.h:1302 net/bridge/br_multicast.c:1906) bridge [ 1364.688299][ C0] ? __pfx_br_ip4_multicast_port_query_expired (net/bridge/br_multicast.c:1920) bridge [ 1364.688333][ C0] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5816) [ 1364.688340][ C0] ? do_raw_spin_lock (./arch/x86/include/asm/atomic.h:107 ./include/linux/atomic/atomic-arch-fallback.h:2170 ./include/linux/atomic/atomic-instrumented.h:1302 ./include/asm-generic/qspinlock.h:111 kernel/locking/spinlock_debug.c:116) [ 1364.688345][ C0] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [ 1364.688348][ C0] ? lock_acquire (kernel/locking/lockdep.c:5824) [ 1364.688351][ C0] ? br_multicast_port_query_expired (./include/trace/events/../../../net/bridge/br_private.h:1293 ./include/trace/events/../../../net/bridge/br_private.h:1302 net/bridge/br_multicast.c:1906) bridge [ 1364.688392][ C0] ? br_multicast_port_query_expired (net/bridge/br_multicast.c:1917) bridge [ 1364.688425][ C0] br_multicast_port_query_expired (net/bridge/br_multicast.c:1917) bridge [ 1364.688462][ C0] ? __pfx_br_ip4_multicast_port_query_expired (net/bridge/br_multicast.c:1920) bridge [ 1364.688495][ C0] call_timer_fn (kernel/time/timer.c:1789) [ 1364.688499][ C0] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1779) [ 1364.688502][ C0] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1779) [ 1364.688506][ C0] ? __pfx_call_timer_fn (kernel/time/timer.c:1766) [ 1364.688510][ C0] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:230) [ 1364.688519][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4323) [ 1364.688531][ C0] __run_timers (kernel/time/timer.c:1841 kernel/time/timer.c:2414) [ 1364.688535][ C0] ? __pfx_br_ip4_multicast_port_query_expired (net/bridge/br_multicast.c:1920) bridge [ 1364.688577][ C0] ? __pfx___run_timers (kernel/time/timer.c:2385) [ 1364.688579][ C0] ? clockevents_program_event (kernel/time/clockevents.c:326) [ 1364.688589][ C0] ? do_raw_spin_lock (./arch/x86/include/asm/atomic.h:107 ./include/linux/atomic/atomic-arch-fallback.h:2170 ./include/linux/atomic/atomic-instrumented.h:1302 ./include/asm-generic/qspinlock.h:111 kernel/locking/spinlock_debug.c:116) [ 1364.688594][ C0] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [ 1364.688598][ C0] ? lock_acquire (kernel/locking/lockdep.c:5824) [ 1364.688600][ C0] ? run_timer_softirq (kernel/time/timer.c:2426 kernel/time/timer.c:2418 kernel/time/timer.c:2435 kernel/time/timer.c:2445) [ 1364.688611][ C0] run_timer_softirq (kernel/time/timer.c:2427 kernel/time/timer.c:2418 kernel/time/timer.c:2435 kernel/time/timer.c:2445) [ 1364.688616][ C0] handle_softirqs (kernel/softirq.c:561) [ 1364.688630][ C0] __irq_exit_rcu (kernel/softirq.c:596 kernel/softirq.c:435 kernel/softirq.c:662) [ 1364.688634][ C0] irq_exit_rcu (kernel/softirq.c:680) [ 1364.688636][ C0] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1049 arch/x86/kernel/apic/apic.c:1049) [ 1364.688641][ C0] [ 1364.688642][ C0] [ 1364.688645][ C0] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:702) [ 1364.688650][ C0] RIP: 0010:unwind_next_frame (arch/x86/kernel/unwind_orc.c:641) [ 1364.688655][ C0] Code: 00 00 00 00 00 fc ff df 48 8b 74 24 20 48 89 f2 48 8d 6e 01 83 e6 07 48 c1 ea 03 48 89 e9 0f b6 14 02 48 c1 e9 03 0f b6 04 01 <40> 38 f2 0f 9e c1 84 d2 0f 95 c2 84 d1 0f 85 c4 0c 00 00 48 89 ea All code ======== 0: 00 00 add %al,(%rax) 2: 00 00 add %al,(%rax) 4: 00 fc add %bh,%ah 6: ff (bad) 7: df 48 8b fisttps -0x75(%rax) a: 74 24 je 0x30 c: 20 48 89 and %cl,-0x77(%rax) f: f2 48 8d 6e 01 repnz lea 0x1(%rsi),%rbp 14: 83 e6 07 and $0x7,%esi 17: 48 c1 ea 03 shr $0x3,%rdx 1b: 48 89 e9 mov %rbp,%rcx 1e: 0f b6 14 02 movzbl (%rdx,%rax,1),%edx 22: 48 c1 e9 03 shr $0x3,%rcx 26: 0f b6 04 01 movzbl (%rcx,%rax,1),%eax 2a:* 40 38 f2 cmp %sil,%dl <-- trapping instruction 2d: 0f 9e c1 setle %cl 30: 84 d2 test %dl,%dl 32: 0f 95 c2 setne %dl 35: 84 d1 test %dl,%cl 37: 0f 85 c4 0c 00 00 jne 0xd01 3d: 48 89 ea mov %rbp,%rdx Code starting with the faulting instruction =========================================== 0: 40 38 f2 cmp %sil,%dl 3: 0f 9e c1 setle %cl 6: 84 d2 test %dl,%dl 8: 0f 95 c2 setne %dl b: 84 d1 test %dl,%cl d: 0f 85 c4 0c 00 00 jne 0xcd7 13: 48 89 ea mov %rbp,%rdx [ 1364.688658][ C0] RSP: 0018:ffffc900002df468 EFLAGS: 00000a02 [ 1364.688661][ C0] RAX: 0000000000000000 RBX: 0000000000000001 RCX: 1ffffffff4c96dae [ 1364.688662][ C0] RDX: 0000000000000000 RSI: 0000000000000002 RDI: ffffc900002df5d0 [ 1364.688664][ C0] RBP: ffffffffa64b6d73 R08: ffffc900002df5a8 R09: 1ffff9200005be96 [ 1364.688665][ C0] R10: ffffc900002df568 R11: ffffc900002df5a9 R12: 1ffff9200005be96 [ 1364.688667][ C0] R13: ffffc900002df568 R14: ffffffffa64b6d6e R15: ffffc900002dfa48 [ 1364.688685][ C0] ? unwind_next_frame (./arch/x86/include/asm/unwind.h:111 ./arch/x86/include/asm/unwind.h:127 arch/x86/kernel/unwind_orc.c:588) [ 1364.688689][ C0] ? __alloc_skb (net/core/skbuff.c:669) [ 1364.688698][ C0] ? __pfx_unwind_next_frame (arch/x86/kernel/unwind_orc.c:469) [ 1364.688707][ C0] ? __alloc_skb (net/core/skbuff.c:669) [ 1364.688710][ C0] ? kernel_text_address (kernel/extable.c:99) [ 1364.688715][ C0] ? __pfx_stack_trace_consume_entry (kernel/stacktrace.c:83) [ 1364.688722][ C0] arch_stack_walk (arch/x86/kernel/stacktrace.c:24) [ 1364.688735][ C0] ? inet6_ifinfo_notify (./include/linux/skbuff.h:1339 ./include/net/netlink.h:1019 net/ipv6/addrconf.c:6161) [ 1364.688747][ C0] stack_trace_save (kernel/stacktrace.c:123) [ 1364.688751][ C0] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 1364.688753][ C0] ? __pfx_unwind_next_frame (arch/x86/kernel/unwind_orc.c:469) [ 1364.688763][ C0] ? __pfx_validate_chain (kernel/locking/lockdep.c:3862) [ 1364.688768][ C0] kasan_save_stack (mm/kasan/common.c:48) [ 1364.688774][ C0] ? kasan_save_stack (mm/kasan/common.c:48) [ 1364.688777][ C0] ? kasan_save_track (./arch/x86/include/asm/current.h:49 mm/kasan/common.c:60 mm/kasan/common.c:69) [ 1364.688780][ C0] ? __kasan_kmalloc (mm/kasan/common.c:398) [ 1364.688783][ C0] ? __kmalloc_node_track_caller_noprof (mm/slub.c:4295 mm/slub.c:4313) [ 1364.688789][ C0] ? kmalloc_reserve (net/core/skbuff.c:603) [ 1364.688793][ C0] ? __alloc_skb (net/core/skbuff.c:669) [ 1364.688799][ C0] ? __lock_acquire (kernel/locking/lockdep.c:5228) [ 1364.688814][ C0] ? find_held_lock (kernel/locking/lockdep.c:5341) [ 1364.688821][ C0] ? __lock_release (kernel/locking/lockdep.c:5527) [ 1364.688824][ C0] ? __create_object (mm/kmemleak.c:766) [ 1364.688829][ C0] ? __pfx___lock_release (kernel/locking/lockdep.c:5503) [ 1364.688834][ C0] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:230) [ 1364.688837][ C0] ? mark_lock (kernel/locking/lockdep.c:4729 (discriminator 3)) [ 1364.688845][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4323) [ 1364.688852][ C0] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4349 kernel/locking/lockdep.c:4408) [ 1364.688860][ C0] kasan_save_track (./arch/x86/include/asm/current.h:49 mm/kasan/common.c:60 mm/kasan/common.c:69) [ 1364.688864][ C0] __kasan_kmalloc (mm/kasan/common.c:398) [ 1364.688870][ C0] __kmalloc_node_track_caller_noprof (mm/slub.c:4295 mm/slub.c:4313) [ 1364.688873][ C0] ? __create_object (mm/kmemleak.c:766) [ 1364.688878][ C0] ? __alloc_skb (net/core/skbuff.c:669) [ 1364.688885][ C0] kmalloc_reserve (net/core/skbuff.c:603) [ 1364.688894][ C0] __alloc_skb (net/core/skbuff.c:669) [ 1364.688898][ C0] ? __pfx___alloc_skb (net/core/skbuff.c:642) [ 1364.688906][ C0] ? rt6_sync_up (net/ipv6/route.c:4797) [ 1364.688911][ C0] ? __pfx_rt6_sync_up (net/ipv6/route.c:4797) [ 1364.688919][ C0] inet6_ifinfo_notify (./include/linux/skbuff.h:1339 ./include/net/netlink.h:1019 net/ipv6/addrconf.c:6161) [ 1364.688926][ C0] addrconf_notify (net/ipv6/addrconf.c:3765 (discriminator 2)) [ 1364.688934][ C0] notifier_call_chain (kernel/notifier.c:85 (discriminator 2)) [ 1364.688948][ C0] netdev_state_change (net/core/dev.c:1538 net/core/dev.c:1529) [ 1364.688952][ C0] ? __pfx_netdev_state_change (net/core/dev.c:1530) [ 1364.688968][ C0] linkwatch_do_dev (net/core/link_watch.c:186) [ 1364.688972][ C0] __linkwatch_run_queue (./include/linux/spinlock.h:376 net/core/link_watch.c:245) [ 1364.688980][ C0] ? __pfx___linkwatch_run_queue (net/core/link_watch.c:195) [ 1364.688986][ C0] ? lock_acquire (kernel/locking/lockdep.c:5824) [ 1364.688996][ C0] linkwatch_event (net/core/link_watch.c:287) [ 1364.688999][ C0] process_one_work (kernel/workqueue.c:3238) [ 1364.689012][ C0] ? __pfx___lock_release (kernel/locking/lockdep.c:5503) [ 1364.689018][ C0] ? __pfx_process_one_work (kernel/workqueue.c:3140) [ 1364.689031][ C0] ? assign_work (kernel/workqueue.c:1200) [ 1364.689041][ C0] worker_thread (kernel/workqueue.c:3313 kernel/workqueue.c:3400) [ 1364.689055][ C0] ? __pfx_worker_thread (kernel/workqueue.c:3346) [ 1364.689061][ C0] kthread (kernel/kthread.c:464) [ 1364.689066][ C0] ? __pfx_kthread (kernel/kthread.c:413) [ 1364.689075][ C0] ? __pfx_kthread (kernel/kthread.c:413) [ 1364.689081][ C0] ret_from_fork (arch/x86/kernel/process.c:148) [ 1364.689085][ C0] ? __pfx_kthread (kernel/kthread.c:413) Finger prints: lockdep_rcu_suspicious:dev_hard_start_xmit:__dev_queue_xmit:br_dev_queue_push_xmit:__br_multicast_send_query