====================================== | [ 13.729958][ C1] #3: ffff888006153358 (&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 | [ 13.730432][ C1] #4: ffffffff9095b5c0 (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) | [ 13.730757][ C1] | [ 13.730757][ C1] stack backtrace: [ 13.730999][ C1] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 13.731001][ C1] Workqueue: events_unbound linkwatch_event [ 13.731006][ C1] Call Trace: [ 13.731009][ C1] [ 13.731011][ C1] dump_stack_lvl (lib/dump_stack.c:123) [ 13.731019][ C1] lockdep_rcu_suspicious (kernel/locking/lockdep.c:6848) [ 13.731029][ C1] 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) [ 13.731040][ C1] __dev_queue_xmit (net/core/dev.h:340 net/core/dev.c:4631) [ 13.731051][ C1] ? __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) [ 13.731060][ C1] ? __pfx___dev_queue_xmit (net/core/dev.c:4538) [ 13.731063][ C1] ? __pfx___alloc_skb (net/core/skbuff.c:642) [ 13.731068][ C1] ? stack_trace_save (kernel/stacktrace.c:114) [ 13.731074][ C1] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 13.731082][ C1] ? __pfx___br_multicast_query_handle_vlan (net/bridge/br_multicast.c:909) bridge [ 13.731138][ C1] br_dev_queue_push_xmit (net/bridge/br_forward.c:34) bridge [ 13.731170][ C1] ? __pfx_br_dev_queue_push_xmit (net/bridge/br_forward.c:34) bridge [ 13.731203][ C1] ? 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 [ 13.731243][ C1] __br_multicast_send_query (net/bridge/br_multicast.c:1813) bridge [ 13.731288][ C1] ? __pfx___br_multicast_send_query (net/bridge/br_multicast.c:1789) bridge [ 13.731328][ C1] ? __lock_acquire (kernel/locking/lockdep.c:5228) [ 13.731339][ C1] ? br_multicast_send_query (net/bridge/br_multicast.c:1891) bridge [ 13.731374][ C1] br_multicast_send_query (net/bridge/br_multicast.c:1891) bridge [ 13.731412][ C1] ? __pfx_br_multicast_send_query (net/bridge/br_multicast.c:1852) bridge [ 13.731445][ C1] ? 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 [ 13.731482][ C1] ? __pfx_br_ip4_multicast_port_query_expired (net/bridge/br_multicast.c:1920) bridge [ 13.731517][ C1] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5816) [ 13.731523][ C1] ? 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) [ 13.731528][ C1] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [ 13.731532][ C1] ? lock_acquire (kernel/locking/lockdep.c:5824) [ 13.731535][ C1] ? 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 [ 13.731575][ C1] ? br_multicast_port_query_expired (net/bridge/br_multicast.c:1917) bridge [ 13.731608][ C1] br_multicast_port_query_expired (net/bridge/br_multicast.c:1917) bridge [ 13.731644][ C1] ? __pfx_br_ip4_multicast_port_query_expired (net/bridge/br_multicast.c:1920) bridge [ 13.731677][ C1] call_timer_fn (kernel/time/timer.c:1789) [ 13.731681][ C1] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1779) [ 13.731684][ C1] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1779) [ 13.731688][ C1] ? __pfx_call_timer_fn (kernel/time/timer.c:1766) [ 13.731691][ C1] ? 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) [ 13.731700][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4323) [ 13.731712][ C1] __run_timers (kernel/time/timer.c:1841 kernel/time/timer.c:2414) [ 13.731716][ C1] ? __pfx_br_ip4_multicast_port_query_expired (net/bridge/br_multicast.c:1920) bridge [ 13.731758][ C1] ? __pfx___run_timers (kernel/time/timer.c:2385) [ 13.731761][ C1] ? clockevents_program_event (kernel/time/clockevents.c:326) [ 13.731771][ C1] ? 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) [ 13.731775][ C1] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [ 13.731779][ C1] ? lock_acquire (kernel/locking/lockdep.c:5824) [ 13.731782][ C1] ? run_timer_softirq (kernel/time/timer.c:2426 kernel/time/timer.c:2418 kernel/time/timer.c:2435 kernel/time/timer.c:2445) [ 13.731792][ C1] run_timer_softirq (kernel/time/timer.c:2427 kernel/time/timer.c:2418 kernel/time/timer.c:2435 kernel/time/timer.c:2445) [ 13.731798][ C1] handle_softirqs (kernel/softirq.c:561) [ 13.731804][ C1] ? do_raw_spin_unlock (./arch/x86/include/asm/atomic.h:23 ./include/linux/atomic/atomic-arch-fallback.h:457 ./include/linux/atomic/atomic-instrumented.h:33 ./include/asm-generic/qspinlock.h:57 kernel/locking/spinlock_debug.c:101 kernel/locking/spinlock_debug.c:141) [ 13.731812][ C1] __irq_exit_rcu (kernel/softirq.c:596 kernel/softirq.c:435 kernel/softirq.c:662) [ 13.731816][ C1] irq_exit_rcu (kernel/softirq.c:680) [ 13.731818][ C1] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1049 arch/x86/kernel/apic/apic.c:1049) [ 13.731822][ C1] [ 13.731823][ C1] [ 13.731826][ C1] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:702) [ 13.731830][ C1] RIP: 0010:_raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:152 kernel/locking/spinlock.c:194) [ 13.731834][ C1] Code: 10 e8 b1 3d 87 fd 48 89 ef e8 f9 ad 87 fd 81 e3 00 02 00 00 75 1d 9c 58 f6 c4 02 75 29 48 85 db 74 01 fb 65 ff 0d b5 0d 6f 70 <74> 0e 5b 5d c3 cc cc cc cc e8 2f df ac fd eb dc 0f 1f 44 00 00 5b All code ======== 0: 10 e8 adc %ch,%al 2: b1 3d mov $0x3d,%cl 4: 87 fd xchg %edi,%ebp 6: 48 89 ef mov %rbp,%rdi 9: e8 f9 ad 87 fd call 0xfffffffffd87ae07 e: 81 e3 00 02 00 00 and $0x200,%ebx 14: 75 1d jne 0x33 16: 9c pushf 17: 58 pop %rax 18: f6 c4 02 test $0x2,%ah 1b: 75 29 jne 0x46 1d: 48 85 db test %rbx,%rbx 20: 74 01 je 0x23 22: fb sti 23: 65 ff 0d b5 0d 6f 70 decl %gs:0x706f0db5(%rip) # 0x706f0ddf 2a:* 74 0e je 0x3a <-- trapping instruction 2c: 5b pop %rbx 2d: 5d pop %rbp 2e: c3 ret 2f: cc int3 30: cc int3 31: cc int3 32: cc int3 33: e8 2f df ac fd call 0xfffffffffdacdf67 38: eb dc jmp 0x16 3a: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 3f: 5b pop %rbx Code starting with the faulting instruction =========================================== 0: 74 0e je 0x10 2: 5b pop %rbx 3: 5d pop %rbp 4: c3 ret 5: cc int3 6: cc int3 7: cc int3 8: cc int3 9: e8 2f df ac fd call 0xfffffffffdacdf3d e: eb dc jmp 0xffffffffffffffec 10: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 15: 5b pop %rbx [ 13.731836][ C1] RSP: 0000:ffffc900002af9c0 EFLAGS: 00000282 [ 13.731839][ C1] RAX: 0000000000000002 RBX: 0000000000000200 RCX: 1ffffffff254b35a [ 13.731841][ C1] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffff8f94b761 [ 13.731843][ C1] RBP: ffff888001a84f28 R08: 0000000000000001 R09: fffffbfff2545bed [ 13.731844][ C1] R10: ffffffff92a2df6f R11: ffff888001d82300 R12: ffff888036000000 [ 13.731846][ C1] R13: 000000000003d7c0 R14: ffff888001a84f28 R15: 0000000000000088 [ 13.731859][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:151 kernel/locking/spinlock.c:194) [ 13.731867][ C1] try_to_wake_up (./include/linux/spinlock.h:551 kernel/sched/core.c:4214) [ 13.731874][ C1] ? __pfx_try_to_wake_up (kernel/sched/core.c:4177) [ 13.731877][ C1] ? mark_lock (kernel/locking/lockdep.c:4729 (discriminator 3)) [ 13.731890][ C1] wake_up_q (./include/linux/instrumented.h:96 ./include/linux/atomic/atomic-instrumented.h:400 ./include/linux/refcount.h:264 ./include/linux/refcount.h:307 ./include/linux/refcount.h:325 ./include/linux/sched/task.h:134 kernel/sched/core.c:1076) [ 13.731897][ C1] __mutex_unlock_slowpath (./include/linux/sched/wake_q.h:53 ./include/linux/sched/wake_q.h:97 kernel/locking/mutex.c:933) [ 13.731903][ C1] ? __pfx___mutex_unlock_slowpath (kernel/locking/mutex.c:885) [ 13.731911][ C1] ? mark_lock (kernel/locking/lockdep.c:4729 (discriminator 3)) [ 13.731914][ C1] ? 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) [ 13.731924][ C1] __rtnl_unlock (net/core/rtnetlink.c:145 (discriminator 3)) [ 13.731928][ C1] netdev_run_todo (./include/linux/list.h:373 net/core/dev.c:11274) [ 13.731933][ C1] ? _raw_spin_unlock_irq (./arch/x86/include/asm/irqflags.h:42 ./arch/x86/include/asm/irqflags.h:97 ./include/linux/spinlock_api_smp.h:159 kernel/locking/spinlock.c:202) [ 13.731936][ C1] ? __linkwatch_run_queue (net/core/link_watch.c:195) [ 13.731941][ C1] ? __pfx_netdev_run_todo (net/core/dev.c:11251) [ 13.731951][ C1] ? lock_acquire (kernel/locking/lockdep.c:5824) [ 13.731967][ C1] process_one_work (kernel/workqueue.c:3238) [ 13.731984][ C1] ? __pfx___lock_release (kernel/locking/lockdep.c:5503) [ 13.731989][ C1] ? __pfx_process_one_work (kernel/workqueue.c:3140) [ 13.732002][ C1] ? assign_work (kernel/workqueue.c:1200) [ 13.732013][ C1] worker_thread (kernel/workqueue.c:3313 kernel/workqueue.c:3400) [ 13.732027][ C1] ? __pfx_worker_thread (kernel/workqueue.c:3346) [ 13.732034][ C1] kthread (kernel/kthread.c:464) [ 13.732038][ C1] ? __pfx_kthread (kernel/kthread.c:413) [ 13.732047][ C1] ? __pfx_kthread (kernel/kthread.c:413) [ 13.732053][ C1] ret_from_fork (arch/x86/kernel/process.c:148) [ 13.732057][ C1] ? __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