====================================== | [ 147.444311][ C1] 1 lock held by swapper/1/0: | [ 147.444391][ C1] #0: ffffffff93b8bc80 (rcu_callback){....}-{0:0}, at: rcu_do_batch (./include/linux/rcupdate.h:300 (discriminator 2) kernel/rcu/tree.c:2611 (discriminator 2)) | [ 147.444543][ C1] | [ 147.444543][ C1] stack backtrace: [ 147.444645][ C1] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 147.444647][ C1] Call Trace: [ 147.444648][ C1] [ 147.444650][ C1] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) [ 147.444655][ C1] print_usage_bug.part.0.cold (kernel/locking/lockdep.c:4042) [ 147.444657][ C1] ? filter_irq_stacks (kernel/stacktrace.c:402) [ 147.444660][ C1] mark_lock_irq (kernel/locking/lockdep.c:4013 kernel/locking/lockdep.c:4056 kernel/locking/lockdep.c:4267) [ 147.444662][ C1] ? sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 147.444663][ C1] ? asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 147.444665][ C1] ? save_trace (kernel/locking/lockdep.c:589) [ 147.444667][ C1] mark_lock (kernel/locking/lockdep.c:4753) [ 147.444669][ C1] mark_usage (kernel/locking/lockdep.c:4642) [ 147.444670][ C1] __lock_acquire (kernel/locking/lockdep.c:5191) [ 147.444672][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 147.444674][ C1] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 147.444678][ C1] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 147.444679][ C1] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 147.444681][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 147.444683][ C1] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 147.444685][ C1] _raw_spin_lock (./include/linux/spinlock_api_smp.h:158 (discriminator 1) kernel/locking/spinlock.c:158 (discriminator 1)) [ 147.444686][ C1] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 147.444687][ C1] tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 147.444689][ C1] tcf_action_rcu_free (net/sched/act_api.c:367 net/sched/act_api.c:378) [ 147.444690][ C1] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2)) [ 147.444692][ C1] rcu_do_batch (kernel/rcu/tree.c:2617) [ 147.444694][ C1] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 147.444696][ C1] ? trace_rcu_batch_end (./include/trace/events/rcu.h:714 (discriminator 19)) [ 147.444698][ C1] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 147.444700][ C1] ? do_raw_spin_unlock (./include/linux/instrumented.h:82 ./include/linux/atomic/atomic-instrumented.h:32 ./include/asm-generic/qspinlock.h:57 kernel/locking/spinlock_debug.c:101 kernel/locking/spinlock_debug.c:141) [ 147.444701][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:470 (discriminator 2) kernel/locking/lockdep.c:4411 (discriminator 2)) [ 147.444702][ C1] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472) [ 147.444703][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 6) kernel/locking/spinlock.c:198 (discriminator 6)) [ 147.444704][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:179 (discriminator 1) kernel/locking/spinlock.c:198 (discriminator 1)) [ 147.444706][ C1] rcu_core (kernel/rcu/tree.c:2869) [ 147.444708][ C1] handle_softirqs (kernel/softirq.c:622) [ 147.444709][ C1] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 147.444711][ C1] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 147.444712][ C1] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1)) [ 147.444714][ C1] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735) [ 147.444716][ C1] irq_exit_rcu (kernel/softirq.c:752) [ 147.444717][ C1] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 147.444718][ C1] [ 147.444719][ C1] [ 147.444720][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 147.444721][ C1] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 147.444723][ C1] RIP: 0010:pv_native_safe_halt (./arch/x86/include/asm/irqflags.h:48 arch/x86/kernel/paravirt.c:62) [ 147.444725][ C1] Code: 48 8b 3d 44 e3 60 02 e8 1f 00 00 00 48 2b 05 c8 81 9e 00 c3 0f 1f 80 00 00 00 00 f3 0f 1e fa eb 07 0f 00 2d 43 74 14 00 fb f4 0f 1f 40 d6 48 83 ec 20 8b 17 49 89 f8 83 e2 fe 41 89 d2 0f 01 All code ======== 0: 48 8b 3d 44 e3 60 02 mov 0x260e344(%rip),%rdi # 0x260e34b 7: e8 1f 00 00 00 call 0x2b c: 48 2b 05 c8 81 9e 00 sub 0x9e81c8(%rip),%rax # 0x9e81db 13: c3 ret 14: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 1b: f3 0f 1e fa endbr64 1f: eb 07 jmp 0x28 21: 0f 00 2d 43 74 14 00 verw 0x147443(%rip) # 0x14746b 28: fb sti 29: f4 hlt 2a:* c3 ret <-- trapping instruction 2b: 0f 1f 40 d6 nopl -0x2a(%rax) 2f: 48 83 ec 20 sub $0x20,%rsp 33: 8b 17 mov (%rdi),%edx 35: 49 89 f8 mov %rdi,%r8 38: 83 e2 fe and $0xfffffffe,%edx 3b: 41 89 d2 mov %edx,%r10d 3e: 0f .byte 0xf 3f: 01 .byte 0x1 Code starting with the faulting instruction =========================================== 0: c3 ret 1: 0f 1f 40 d6 nopl -0x2a(%rax) 5: 48 83 ec 20 sub $0x20,%rsp 9: 8b 17 mov (%rdi),%edx b: 49 89 f8 mov %rdi,%r8 e: 83 e2 fe and $0xfffffffe,%edx 11: 41 89 d2 mov %edx,%r10d 14: 0f .byte 0xf 15: 01 .byte 0x1 [ 147.444726][ C1] RSP: 0018:ffa0000000147de8 EFLAGS: 00000296 [ 147.444728][ C1] RAX: 00000000003273d5 RBX: ff11000001b9a340 RCX: ffffffff900ea8a7 [ 147.444730][ C1] RDX: ff11000001b9a340 RSI: ffffffff93093d1a RDI: ffffffff92a727c0 [ 147.444731][ C1] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 147.444731][ C1] R10: 0000000000000001 R11: 0000000000000001 R12: 1ff4000000028fc0 [ 147.444732][ C1] R13: 0000000000000000 R14: dffffc0000000000 R15: 0000000000000000 [ 147.444733][ C1] ? cpuidle_idle_call.constprop.0 (kernel/sched/idle.c:199) [ 147.444737][ C1] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472) [ 147.444738][ C1] default_idle (./arch/x86/include/asm/paravirt.h:62 arch/x86/kernel/process.c:767) [ 147.444739][ C1] default_idle_call (kernel/sched/idle.c:122) [ 147.444741][ C1] cpuidle_idle_call.constprop.0 (kernel/sched/idle.c:199) [ 147.444742][ C1] ? arch_cpu_idle_exit+0x40/0x40 [ 147.444744][ C1] ? mark_tsc_async_resets (arch/x86/kernel/tsc_sync.c:49) [ 147.444746][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 147.444748][ C1] do_idle (kernel/sched/idle.c:352) [ 147.444750][ C1] cpu_startup_entry (kernel/sched/idle.c:451) [ 147.444751][ C1] start_secondary (arch/x86/kernel/smpboot.c:312) [ 147.444753][ C1] ? set_cpu_sibling_map (./arch/x86/include/asm/smp.h:148 (discriminator 4)) Finger prints: mark_lock_irq:mark_lock:mark_usage:__lock_acquire:_raw_spin_lock