====================================== | [ 157.162467][ C0] #1: ff11000002575778 (&mm->mmap_lock){++++}-{4:4}, at: __vmf_anon_prepare (./include/linux/mmap_lock.h:611 mm/memory.c:3826) | [ 157.162631][ C0] #2: ffffffff9e377c00 (rcu_callback){....}-{0:0}, at: rcu_do_batch (./include/linux/rcupdate.h:300 (discriminator 2) kernel/rcu/tree.c:2611 (discriminator 2)) | [ 157.162796][ C0] | [ 157.162796][ C0] stack backtrace: [ 157.162912][ C0] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 157.162914][ C0] Call Trace: [ 157.162915][ C0] [ 157.162917][ C0] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) [ 157.162922][ C0] print_usage_bug.part.0.cold (kernel/locking/lockdep.c:4042) [ 157.162924][ C0] ? filter_irq_stacks (kernel/stacktrace.c:402) [ 157.162928][ C0] mark_lock_irq (kernel/locking/lockdep.c:4013 kernel/locking/lockdep.c:4056 kernel/locking/lockdep.c:4267) [ 157.162929][ C0] ? sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 157.162931][ C0] ? asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 157.162933][ C0] ? save_trace (kernel/locking/lockdep.c:589) [ 157.162935][ C0] ? __access_remote_vm (mm/memory.c:7070) [ 157.162937][ C0] mark_lock (kernel/locking/lockdep.c:4753) [ 157.162938][ C0] mark_usage (kernel/locking/lockdep.c:4642) [ 157.162940][ C0] __lock_acquire (kernel/locking/lockdep.c:5191) [ 157.162941][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4325) [ 157.162944][ C0] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 157.162945][ C0] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 157.162947][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 157.162949][ C0] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 157.162951][ C0] _raw_spin_lock (./include/linux/spinlock_api_smp.h:158 (discriminator 1) kernel/locking/spinlock.c:158 (discriminator 1)) [ 157.162952][ C0] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 157.162954][ C0] tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 157.162956][ C0] tcf_action_rcu_free (net/sched/act_api.c:367 net/sched/act_api.c:378) [ 157.162957][ C0] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2)) [ 157.162959][ C0] rcu_do_batch (kernel/rcu/tree.c:2617) [ 157.162962][ C0] ? trace_rcu_batch_end (./include/trace/events/rcu.h:714 (discriminator 19)) [ 157.162964][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4325) [ 157.162965][ C0] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:470 (discriminator 2) kernel/locking/lockdep.c:4411 (discriminator 2)) [ 157.162967][ C0] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472) [ 157.162969][ C0] rcu_core (kernel/rcu/tree.c:2869) [ 157.162970][ C0] handle_softirqs (kernel/softirq.c:622) [ 157.162972][ C0] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 157.162975][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 157.162977][ C0] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1)) [ 157.162979][ C0] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735) [ 157.162980][ C0] irq_exit_rcu (kernel/softirq.c:752) [ 157.162982][ C0] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 157.162983][ C0] [ 157.162984][ C0] [ 157.162985][ C0] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 157.162986][ C0] RIP: 0010:_raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 12) kernel/locking/spinlock.c:198 (discriminator 12)) [ 157.162989][ C0] Code: f5 53 48 8b 74 24 10 48 89 fb 48 83 c7 18 e8 21 7e ca fd 48 89 df e8 a9 d4 ca fd f7 c5 00 02 00 00 75 1f 9c 58 f6 c4 02 75 2f 01 00 00 00 e8 30 62 bd fd 65 8b 05 29 0a fe 01 85 c0 74 12 5b All code ======== 0: f5 cmc 1: 53 push %rbx 2: 48 8b 74 24 10 mov 0x10(%rsp),%rsi 7: 48 89 fb mov %rdi,%rbx a: 48 83 c7 18 add $0x18,%rdi e: e8 21 7e ca fd call 0xfffffffffdca7e34 13: 48 89 df mov %rbx,%rdi 16: e8 a9 d4 ca fd call 0xfffffffffdcad4c4 1b: f7 c5 00 02 00 00 test $0x200,%ebp 21: 75 1f jne 0x42 23: 9c pushf 24: 58 pop %rax 25: f6 c4 02 test $0x2,%ah 28: 75 2f jne 0x59 2a:* bf 01 00 00 00 mov $0x1,%edi <-- trapping instruction 2f: e8 30 62 bd fd call 0xfffffffffdbd6264 34: 65 8b 05 29 0a fe 01 mov %gs:0x1fe0a29(%rip),%eax # 0x1fe0a64 3b: 85 c0 test %eax,%eax 3d: 74 12 je 0x51 3f: 5b pop %rbx Code starting with the faulting instruction =========================================== 0: bf 01 00 00 00 mov $0x1,%edi 5: e8 30 62 bd fd call 0xfffffffffdbd623a a: 65 8b 05 29 0a fe 01 mov %gs:0x1fe0a29(%rip),%eax # 0x1fe0a3a 11: 85 c0 test %eax,%eax 13: 74 12 je 0x27 15: 5b pop %rbx [ 157.162991][ C0] RSP: 0000:ffa0000000657a58 EFLAGS: 00000246 [ 157.162993][ C0] RAX: 0000000000000096 RBX: ff11000001041440 RCX: ffffffff9d490613 [ 157.162994][ C0] RDX: ff11000011f82340 RSI: ffffffff9de01bcb RDI: ffffffff9d86f6c0 [ 157.162995][ C0] RBP: 0000000000000206 R08: 0000000000000000 R09: 0000000000000000 [ 157.162996][ C0] R10: 0000000000000000 R11: 0000000000000001 R12: ff11000001041440 [ 157.162997][ C0] R13: ff1100000103fe40 R14: ff11000009a88d70 R15: ffd400000026a200 [ 157.162999][ C0] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 6) kernel/locking/spinlock.c:198 (discriminator 6)) [ 157.163001][ C0] get_from_partial_node (./include/linux/spinlock.h:408 (discriminator 3) mm/slub.c:3835 (discriminator 3)) [ 157.163005][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 157.163007][ C0] ___slab_alloc (mm/slub.c:3924 (discriminator 1) mm/slub.c:4441 (discriminator 1)) [ 157.163009][ C0] ? __alloc_object (mm/kmemleak.c:483 (discriminator 1) mm/kmemleak.c:665 (discriminator 1)) [ 157.163011][ C0] ? __pcs_replace_empty_main (mm/slub.c:4615 (discriminator 20)) [ 157.163013][ C0] ? __alloc_object (mm/kmemleak.c:483 (discriminator 1) mm/kmemleak.c:665 (discriminator 1)) [ 157.163014][ C0] kmem_cache_alloc_noprof (mm/slub.c:4511 mm/slub.c:4887 mm/slub.c:4906) [ 157.163017][ C0] __alloc_object (mm/kmemleak.c:483 (discriminator 1) mm/kmemleak.c:665 (discriminator 1)) [ 157.163018][ C0] __create_object (mm/kmemleak.c:779) [ 157.163020][ C0] ? kasan_save_track (mm/kasan/common.c:78) [ 157.163023][ C0] kmem_cache_alloc_noprof (./include/linux/kmemleak.h:44 mm/slub.c:4575 mm/slub.c:4899 mm/slub.c:4906) [ 157.163025][ C0] __anon_vma_prepare (mm/rmap.c:142 (discriminator 7) mm/rmap.c:194 (discriminator 7)) [ 157.163028][ C0] __vmf_anon_prepare (mm/memory.c:3829) [ 157.163030][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 157.163031][ C0] do_anonymous_page (mm/internal.h:503 mm/memory.c:5388) [ 157.163033][ C0] ? rcu_read_unlock (./include/linux/rcupdate.h:867 (discriminator 5)) [ 157.163035][ C0] __handle_mm_fault (mm/memory.c:6427 mm/memory.c:6565) [ 157.163037][ C0] ? __pmd_alloc (./include/linux/mm.h:1682) [ 157.163038][ C0] ? lock_vma_under_rcu (./include/linux/rcupdate.h:310 (discriminator 2) ./include/linux/rcupdate.h:869 (discriminator 2) mm/mmap_lock.c:329 (discriminator 2)) [ 157.163040][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5574) [ 157.163043][ C0] handle_mm_fault (mm/memory.c:6734) [ 157.163045][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 157.163047][ C0] do_user_addr_fault (arch/x86/mm/fault.c:1334) [ 157.163050][ C0] ? irqentry_enter (./include/linux/irq-entry-common.h:108 ./include/linux/irq-entry-common.h:293 kernel/entry/common.c:113) [ 157.163052][ C0] exc_page_fault (arch/x86/mm/fault.c:1474 arch/x86/mm/fault.c:1527) [ 157.163054][ C0] asm_exc_page_fault (./arch/x86/include/asm/idtentry.h:618) [ 157.163055][ C0] RIP: 0033:0x7f76630a003d [ 157.163058][ C0] Code: 04 00 00 48 8d 40 01 48 89 45 b0 48 89 55 a8 be 01 00 00 00 ff 15 23 ba 02 00 49 89 c6 48 85 c0 0f 84 24 02 00 00 48 8b 55 a8 <48> 89 40 28 4c 89 ee 4c 8d 84 10 b8 04 00 00 48 8b 55 b0 4c 89 80 All code ======== 0: 04 00 add $0x0,%al 2: 00 48 8d add %cl,-0x73(%rax) 5: 40 01 48 89 rex add %ecx,-0x77(%rax) 9: 45 b0 48 rex.RB mov $0x48,%r8b c: 89 55 a8 mov %edx,-0x58(%rbp) f: be 01 00 00 00 mov $0x1,%esi 14: ff 15 23 ba 02 00 call *0x2ba23(%rip) # 0x2ba3d 1a: 49 89 c6 mov %rax,%r14 1d: 48 85 c0 test %rax,%rax 20: 0f 84 24 02 00 00 je 0x24a 26: 48 8b 55 a8 mov -0x58(%rbp),%rdx 2a:* 48 89 40 28 mov %rax,0x28(%rax) <-- trapping instruction 2e: 4c 89 ee mov %r13,%rsi 31: 4c 8d 84 10 b8 04 00 lea 0x4b8(%rax,%rdx,1),%r8 38: 00 39: 48 8b 55 b0 mov -0x50(%rbp),%rdx 3d: 4c rex.WR 3e: 89 .byte 0x89 3f: 80 .byte 0x80 Code starting with the faulting instruction =========================================== 0: 48 89 40 28 mov %rax,0x28(%rax) 4: 4c 89 ee mov %r13,%rsi 7: 4c 8d 84 10 b8 04 00 lea 0x4b8(%rax,%rdx,1),%r8 e: 00 f: 48 8b 55 b0 mov -0x50(%rbp),%rdx 13: 4c rex.WR 14: 89 .byte 0x89 15: 80 .byte 0x80 [ 157.163059][ C0] RSP: 002b:00007fff672a3290 EFLAGS: 00010206 [ 157.163060][ C0] RAX: 00007f7662fc0000 RBX: 0000000000000000 RCX: 00007f7662fc2000 [ 157.163061][ C0] RDX: 0000000000000000 RSI: 0000000000002000 RDI: 00007f7662fc0000 [ 157.163061][ C0] RBP: 00007fff672a32f0 R08: 00000000ffffffff R09: 0000000000000000 [ 157.163062][ C0] R10: 0000000000000022 R11: 0000000000000246 R12: 000000000000000b Finger prints: mark_lock_irq:mark_lock:mark_usage:__lock_acquire:_raw_spin_lock