====================================== | [ 41.237507][ C0] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:129) | [ 41.237689][ C0] | [ 41.237762][ C0] | [ 41.237762][ C0] stack backtrace: [ 41.238157][ C0] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 41.238578][ C0] Call Trace: [ 41.238697][ C0] [ 41.238774][ C0] dump_stack_lvl (lib/dump_stack.c:117) [ 41.238933][ C0] print_irq_inversion_bug.part.0 (kernel/locking/lockdep.c:4024) [ 41.239115][ C0] ? kernel_text_address (kernel/extable.c:97 kernel/extable.c:94) [ 41.239263][ C0] ? __pfx_print_irq_inversion_bug.part.0 (kernel/locking/lockdep.c:4024) [ 41.239446][ C0] ? __pfx_usage_skip (kernel/locking/lockdep.c:2264) [ 41.239594][ C0] ? __pfx_usage_match (kernel/locking/lockdep.c:2256) [ 41.239739][ C0] ? arch_stack_walk (arch/x86/kernel/stacktrace.c:26) [ 41.239977][ C0] mark_lock_irq (kernel/locking/lockdep.c:4244) [ 41.240124][ C0] ? __pfx_mark_lock_irq (kernel/locking/lockdep.c:4207) [ 41.240270][ C0] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 41.240419][ C0] ? save_trace (kernel/locking/lockdep.c:586) [ 41.240654][ C0] mark_lock (kernel/locking/lockdep.c:4678) [ 41.240765][ C0] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 41.240910][ C0] mark_usage (kernel/locking/lockdep.c:4567) [ 41.241025][ C0] __lock_acquire (kernel/locking/lockdep.c:5091) [ 41.241171][ C0] ? __pfx_validate_chain (kernel/locking/lockdep.c:3825) [ 41.241409][ C0] ? __pfx_addrconf_rs_timer (net/ipv6/addrconf.c:4016) [ 41.241553][ C0] lock_acquire.part.0 (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5756) [ 41.241703][ C0] ? addrconf_rs_timer (net/ipv6/addrconf.c:4023) [ 41.241847][ C0] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5719) [ 41.242082][ C0] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [ 41.242227][ C0] ? addrconf_rs_timer (net/ipv6/addrconf.c:4023) [ 41.242375][ C0] ? lock_acquire (kernel/locking/lockdep.c:5727) [ 41.242523][ C0] ? addrconf_rs_timer (net/ipv6/addrconf.c:4023) [ 41.242668][ C0] _raw_write_lock (./include/linux/rwlock_api_smp.h:210 kernel/locking/spinlock.c:300) [ 41.242902][ C0] ? addrconf_rs_timer (net/ipv6/addrconf.c:4023) [ 41.243047][ C0] addrconf_rs_timer (net/ipv6/addrconf.c:4023) [ 41.243191][ C0] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5719) [ 41.243338][ C0] ? __pfx_addrconf_rs_timer (net/ipv6/addrconf.c:4016) [ 41.243575][ C0] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1783) [ 41.243723][ C0] ? lock_acquire (kernel/locking/lockdep.c:5727) [ 41.243868][ C0] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1783) [ 41.244013][ C0] ? __pfx_addrconf_rs_timer (net/ipv6/addrconf.c:4016) [ 41.244158][ C0] call_timer_fn (kernel/time/timer.c:1793) [ 41.244303][ C0] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1783) [ 41.244450][ C0] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1783) [ 41.244595][ C0] ? __pfx_call_timer_fn (kernel/time/timer.c:1770) [ 41.244831][ 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:228) [ 41.244977][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4274) [ 41.245127][ C0] __run_timers (kernel/time/timer.c:1845 kernel/time/timer.c:2418) [ 41.245272][ C0] ? __pfx_addrconf_rs_timer (net/ipv6/addrconf.c:4016) [ 41.245420][ C0] ? __pfx___run_timers (kernel/time/timer.c:2389) [ 41.245662][ C0] ? __lock_release (kernel/locking/lockdep.c:5430) [ 41.245808][ C0] ? do_raw_spin_lock (./arch/x86/include/asm/atomic.h:115 ./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) [ 41.245953][ C0] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [ 41.246097][ C0] ? lock_acquire (kernel/locking/lockdep.c:5727) [ 41.246242][ C0] ? timer_expire_remote (kernel/time/timer.c:2429 kernel/time/timer.c:2422 kernel/time/timer.c:2181) [ 41.246392][ C0] timer_expire_remote (kernel/time/timer.c:2430 kernel/time/timer.c:2422 kernel/time/timer.c:2181) [ 41.246540][ C0] tmigr_handle_remote_cpu (./arch/x86/include/asm/irqflags.h:26 ./arch/x86/include/asm/irqflags.h:67 ./arch/x86/include/asm/irqflags.h:127 kernel/time/timer_migration.c:925) [ 41.246686][ C0] ? __pfx_tmigr_handle_remote_cpu (kernel/time/timer_migration.c:869) [ 41.246956][ 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:228) [ 41.247100][ C0] ? mark_lock (kernel/locking/lockdep.c:4656 (discriminator 3)) [ 41.247211][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4274) [ 41.247357][ C0] tmigr_handle_remote_up (kernel/time/timer_migration.c:1003) [ 41.247606][ C0] tmigr_handle_remote (kernel/time/timer_migration.c:488 kernel/time/timer_migration.c:1061) [ 41.247754][ C0] ? __pfx_tmigr_handle_remote (kernel/time/timer_migration.c:1026) [ 41.247900][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4274) [ 41.248046][ C0] __do_softirq (kernel/softirq.c:554) [ 41.248194][ C0] irq_exit_rcu (kernel/softirq.c:428 kernel/softirq.c:633 kernel/softirq.c:645) [ 41.248304][ C0] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1043 arch/x86/kernel/apic/apic.c:1043) [ 41.248452][ C0] [ 41.248526][ C0] [ 41.248600][ C0] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:702) [ 41.248780][ C0] RIP: 0010:stack_depot_save_flags (lib/stackdepot.c:588) [ 41.249076][ C0] Code: f2 ff eb 88 48 89 ef e8 58 d8 f2 ff e9 20 ff ff ff 0f 1f 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 41 57 <41> 56 41 55 41 89 cd 41 54 55 53 48 83 ec 28 65 48 8b 04 25 28 00 All code ======== 0: f2 ff repnz (bad) 2: eb 88 jmp 0xffffffffffffff8c 4: 48 89 ef mov %rbp,%rdi 7: e8 58 d8 f2 ff call 0xfffffffffff2d864 c: e9 20 ff ff ff jmp 0xffffffffffffff31 11: 0f 1f 00 nopl (%rax) 14: 90 nop 15: 90 nop 16: 90 nop 17: 90 nop 18: 90 nop 19: 90 nop 1a: 90 nop 1b: 90 nop 1c: 90 nop 1d: 90 nop 1e: 90 nop 1f: 90 nop 20: 90 nop 21: 90 nop 22: 90 nop 23: 90 nop 24: f3 0f 1e fa endbr64 28: 41 57 push %r15 2a:* 41 56 push %r14 <-- trapping instruction 2c: 41 55 push %r13 2e: 41 89 cd mov %ecx,%r13d 31: 41 54 push %r12 33: 55 push %rbp 34: 53 push %rbx 35: 48 83 ec 28 sub $0x28,%rsp 39: 65 gs 3a: 48 rex.W 3b: 8b .byte 0x8b 3c: 04 25 add $0x25,%al 3e: 28 00 sub %al,(%rax) Code starting with the faulting instruction =========================================== 0: 41 56 push %r14 2: 41 55 push %r13 4: 41 89 cd mov %ecx,%r13d 7: 41 54 push %r12 9: 55 push %rbp a: 53 push %rbx b: 48 83 ec 28 sub $0x28,%rsp f: 65 gs 10: 48 rex.W 11: 8b .byte 0x8b 12: 04 25 add $0x25,%al 14: 28 00 sub %al,(%rax) [ 41.249687][ C0] RSP: 0018:ffffc90000fcf7c8 EFLAGS: 00000283 [ 41.249878][ C0] RAX: 000000000000000a RBX: 1ffff920001f9efb RCX: 0000000000000001 [ 41.250096][ C0] RDX: 0000000000002800 RSI: 000000000000000a RDI: ffffc90000fcf7f8 [ 41.250409][ C0] RBP: ffff8880049269a4 R08: ffffffff85bc8c5c R09: fffffbfff13b2b5a [ 41.250630][ C0] R10: ffffffff89d95ad7 R11: ffffc90000fcf6e1 R12: ffff8880049268c8 [ 41.250846][ C0] R13: 0000000000000100 R14: 0000000000000001 R15: 0000000000000cc0 [ 41.251157][ C0] ? is_bpf_text_address (./include/linux/rcupdate.h:339 ./include/linux/rcupdate.h:814 kernel/bpf/core.c:769) [ 41.251304][ C0] set_track_prepare (mm/slub.c:6424) [ 41.251454][ C0] ? __pfx_set_track_prepare (mm/slub.c:880) [ 41.251601][ C0] ? kmem_cache_alloc (./include/linux/kmemleak.h:42 mm/slub.c:3802 mm/slub.c:3845 mm/slub.c:3852) [ 41.251838][ C0] ? mas_alloc_nodes (lib/maple_tree.c:1243) [ 41.251983][ C0] ? mas_preallocate (lib/maple_tree.c:5557) [ 41.252126][ C0] ? __split_vma (mm/mmap.c:2352) [ 41.252271][ C0] ? vma_modify (mm/mmap.c:2454) [ 41.252416][ C0] ? mprotect_fixup (mm/mprotect.c:636) [ 41.252657][ C0] ? do_mprotect_pkey (mm/mprotect.c:810) [ 41.252804][ C0] ? __x64_sys_mprotect (mm/mprotect.c:827) [ 41.252952][ C0] ? do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 41.253097][ C0] ? entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:129) [ 41.253276][ C0] ? lockdep_init_map_type (kernel/locking/lockdep.c:4892) [ 41.253421][ C0] ? __raw_spin_lock_init (kernel/locking/spinlock_debug.c:27) [ 41.253567][ C0] __alloc_object (mm/kmemleak.c:681) [ 41.253716][ C0] __create_object (mm/kmemleak.c:750) [ 41.253953][ C0] kmem_cache_alloc (./include/linux/kmemleak.h:42 mm/slub.c:3802 mm/slub.c:3845 mm/slub.c:3852) [ 41.254098][ C0] ? __lock_release (kernel/locking/lockdep.c:5406) [ 41.254244][ C0] mas_alloc_nodes (lib/maple_tree.c:1243) [ 41.254393][ C0] ? mark_lock (kernel/locking/lockdep.c:4656 (discriminator 3)) [ 41.254599][ C0] mas_preallocate (lib/maple_tree.c:5557) [ 41.254747][ C0] ? __pfx_mas_preallocate (lib/maple_tree.c:5500) [ 41.254892][ C0] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4300 kernel/locking/lockdep.c:4359) [ 41.255074][ C0] ? __raw_spin_lock_init (kernel/locking/spinlock_debug.c:27) [ 41.255221][ C0] __split_vma (mm/mmap.c:2352) [ 41.255366][ C0] ? __pfx___split_vma (mm/mmap.c:2325) [ 41.255514][ C0] vma_modify (mm/mmap.c:2454) [ 41.255631][ C0] mprotect_fixup (mm/mprotect.c:636) [ 41.255777][ C0] ? mas_next_slot (lib/maple_tree.c:788 lib/maple_tree.c:4689) [ 41.256012][ C0] ? __pfx_mprotect_fixup (mm/mprotect.c:580) [ 41.256158][ C0] ? __pfx_mas_prev (lib/maple_tree.c:5884) [ 41.256304][ C0] do_mprotect_pkey (mm/mprotect.c:810) [ 41.256451][ C0] ? __pfx_do_mprotect_pkey (mm/mprotect.c:682) [ 41.256688][ C0] ? __lock_release (kernel/locking/lockdep.c:5430) [ 41.256836][ C0] ? do_user_addr_fault (./include/linux/rcupdate.h:339 ./include/linux/rcupdate.h:814 ./include/linux/mm.h:702 arch/x86/mm/fault.c:1364) [ 41.256985][ C0] ? __pfx___up_read (kernel/locking/rwsem.c:1339) [ 41.257131][ C0] ? do_user_addr_fault (./include/linux/rcupdate.h:339 ./include/linux/rcupdate.h:814 ./include/linux/mm.h:702 arch/x86/mm/fault.c:1364) [ 41.257368][ C0] __x64_sys_mprotect (mm/mprotect.c:827) [ 41.257514][ C0] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 41.257661][ C0] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:129) [ 41.257843][ C0] RIP: 0033:0x7f01b4e54efb [ 41.258086][ C0] Code: 73 01 c3 48 8d 0d 05 33 03 00 f7 d8 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 f3 0f 1e fa b8 0a 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8d 0d d5 32 03 00 f7 d8 89 01 48 83 All code ======== 0: 73 01 jae 0x3 2: c3 ret 3: 48 8d 0d 05 33 03 00 lea 0x33305(%rip),%rcx # 0x3330f a: f7 d8 neg %eax c: 89 01 mov %eax,(%rcx) e: 48 83 c8 ff or $0xffffffffffffffff,%rax 12: c3 ret 13: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1) 1a: 00 00 00 1d: 66 90 xchg %ax,%ax 1f: f3 0f 1e fa endbr64 23: b8 0a 00 00 00 mov $0xa,%eax 28: 0f 05 syscall 2a:* 48 3d 01 f0 ff ff cmp $0xfffffffffffff001,%rax <-- trapping instruction 30: 73 01 jae 0x33 32: c3 ret 33: 48 8d 0d d5 32 03 00 lea 0x332d5(%rip),%rcx # 0x3330f 3a: f7 d8 neg %eax 3c: 89 01 mov %eax,(%rcx) 3e: 48 rex.W 3f: 83 .byte 0x83 Code starting with the faulting instruction =========================================== 0: 48 3d 01 f0 ff ff cmp $0xfffffffffffff001,%rax 6: 73 01 jae 0x9 8: c3 ret 9: 48 8d 0d d5 32 03 00 lea 0x332d5(%rip),%rcx # 0x332e5 10: f7 d8 neg %eax 12: 89 01 mov %eax,(%rcx) 14: 48 rex.W 15: 83 .byte 0x83 [ 41.258599][ C0] RSP: 002b:00007ffd79497aa8 EFLAGS: 00000206 ORIG_RAX: 000000000000000a [ 41.258927][ C0] RAX: ffffffffffffffda RBX: 00007f01b4dea530 RCX: 00007f01b4e54efb [ 41.259145][ C0] RDX: 0000000000000001 RSI: 0000000000001000 RDI: 00007f01b4be0000 [ 41.259361][ C0] RBP: 00007ffd79497bc0 R08: 0000000000000000 R09: 00007f01b4c30170 [ 41.259580][ C0] R10: 00007f01b4b44000 R11: 0000000000000206 R12: 0000000000000000 Finger prints: dump_stack_lvl:mark_lock_irq:mark_lock:mark_usage