====================================== | [ 135.053274][ C2] #1: ffffffffb5d905f8 (remove_cache_srcu){.+.+}-{0:0}, at: kasan_quarantine_reduce (./include/linux/srcu.h:187 (discriminator 2) ./include/linux/srcu.h:294 (discriminator 2) mm/kasan/quarantine.c:259 (discriminator 2)) | [ 135.053476][ C2] #2: ffffffffb5b77c00 (rcu_callback){....}-{0:0}, at: rcu_do_batch (./include/linux/rcupdate.h:300 (discriminator 2) kernel/rcu/tree.c:2611 (discriminator 2)) | [ 135.053653][ C2] | [ 135.053653][ C2] stack backtrace: [ 135.053781][ C2] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 135.053783][ C2] Call Trace: [ 135.053784][ C2] [ 135.053785][ C2] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) [ 135.053791][ C2] print_usage_bug.part.0.cold (kernel/locking/lockdep.c:4042) [ 135.053793][ C2] ? filter_irq_stacks (kernel/stacktrace.c:402) [ 135.053797][ C2] mark_lock_irq (kernel/locking/lockdep.c:4013 kernel/locking/lockdep.c:4056 kernel/locking/lockdep.c:4267) [ 135.053798][ C2] ? sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 135.053800][ C2] ? asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 135.053802][ C2] ? save_trace (kernel/locking/lockdep.c:589) [ 135.053804][ C2] ? mmu_notifier_unregister (./include/linux/list.h:999 ./include/linux/rculist.h:237 mm/mmu_notifier.c:869) [ 135.053808][ C2] mark_lock (kernel/locking/lockdep.c:4753) [ 135.053809][ C2] mark_usage (kernel/locking/lockdep.c:4642) [ 135.053811][ C2] __lock_acquire (kernel/locking/lockdep.c:5191) [ 135.053812][ C2] ? mark_held_locks (kernel/locking/lockdep.c:4325) [ 135.053813][ C2] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2)) [ 135.053816][ C2] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 135.053818][ C2] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 135.053820][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 135.053822][ C2] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 135.053823][ C2] _raw_spin_lock (./include/linux/spinlock_api_smp.h:158 (discriminator 1) kernel/locking/spinlock.c:158 (discriminator 1)) [ 135.053825][ C2] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 135.053827][ C2] tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 135.053828][ C2] tcf_action_rcu_free (net/sched/act_api.c:367 net/sched/act_api.c:378) [ 135.053830][ C2] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2)) [ 135.053832][ C2] rcu_do_batch (kernel/rcu/tree.c:2617) [ 135.053834][ C2] ? trace_rcu_batch_end (./include/trace/events/rcu.h:714 (discriminator 19)) [ 135.053837][ C2] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:470 (discriminator 2) kernel/locking/lockdep.c:4411 (discriminator 2)) [ 135.053838][ C2] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472) [ 135.053840][ C2] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 6) kernel/locking/spinlock.c:198 (discriminator 6)) [ 135.053841][ C2] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:179 (discriminator 1) kernel/locking/spinlock.c:198 (discriminator 1)) [ 135.053843][ C2] rcu_core (kernel/rcu/tree.c:2869) [ 135.053845][ C2] handle_softirqs (kernel/softirq.c:622) [ 135.053847][ C2] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 135.053850][ C2] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 135.053851][ C2] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1)) [ 135.053853][ C2] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735) [ 135.053855][ C2] irq_exit_rcu (kernel/softirq.c:752) [ 135.053857][ C2] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 135.053858][ C2] [ 135.053859][ C2] [ 135.053860][ C2] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 135.053861][ C2] RIP: 0010:lock_acquire.part.0 (./arch/x86/include/asm/irqflags.h:26 ./arch/x86/include/asm/irqflags.h:109 ./arch/x86/include/asm/irqflags.h:127 kernel/locking/lockdep.c:5864) [ 135.053864][ C2] Code: 00 65 8b 0d c5 d9 33 04 85 c9 0f 85 c9 00 00 00 65 48 8b 05 65 93 33 04 8b 90 ec 0a 00 00 85 d2 0f 85 b3 00 00 00 9c 8f 04 24 48 c7 c7 cd 44 63 b5 e8 f6 1d 33 02 45 89 f0 44 89 f9 89 ea 65 All code ======== 0: 00 65 8b add %ah,-0x75(%rbp) 3: 0d c5 d9 33 04 or $0x433d9c5,%eax 8: 85 c9 test %ecx,%ecx a: 0f 85 c9 00 00 00 jne 0xd9 10: 65 48 8b 05 65 93 33 mov %gs:0x4339365(%rip),%rax # 0x433937d 17: 04 18: 8b 90 ec 0a 00 00 mov 0xaec(%rax),%edx 1e: 85 d2 test %edx,%edx 20: 0f 85 b3 00 00 00 jne 0xd9 26: 9c pushf 27: 8f 04 24 pop (%rsp) 2a:* fa cli <-- trapping instruction 2b: 48 c7 c7 cd 44 63 b5 mov $0xffffffffb56344cd,%rdi 32: e8 f6 1d 33 02 call 0x2331e2d 37: 45 89 f0 mov %r14d,%r8d 3a: 44 89 f9 mov %r15d,%ecx 3d: 89 ea mov %ebp,%edx 3f: 65 gs Code starting with the faulting instruction =========================================== 0: fa cli 1: 48 c7 c7 cd 44 63 b5 mov $0xffffffffb56344cd,%rdi 8: e8 f6 1d 33 02 call 0x2331e03 d: 45 89 f0 mov %r14d,%r8d 10: 44 89 f9 mov %r15d,%ecx 13: 89 ea mov %ebp,%edx 15: 65 gs [ 135.053866][ C2] RSP: 0018:ffa0000000826e60 EFLAGS: 00000246 [ 135.053868][ C2] RAX: ff110000196b4640 RBX: 0000000000000000 RCX: 0000000000000000 [ 135.053869][ C2] RDX: 0000000000000000 RSI: 0000000000000001 RDI: 1ffffffff6b6efa4 [ 135.053870][ C2] RBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000000 [ 135.053871][ C2] R10: 0000000000000002 R11: 0000000000000000 R12: ffffffffb5b77d20 [ 135.053872][ C2] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000002 [ 135.053874][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 135.053876][ C2] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 135.053878][ C2] unwind_next_frame (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:838 (discriminator 2) ./include/linux/rcupdate.h:1181 (discriminator 2) arch/x86/kernel/unwind_orc.c:495 (discriminator 2)) [ 135.053880][ C2] ? unwind_next_frame (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:838 (discriminator 2) ./include/linux/rcupdate.h:1181 (discriminator 2) arch/x86/kernel/unwind_orc.c:495 (discriminator 2)) [ 135.053881][ C2] ? set_track_prepare (mm/slub.c:1037) [ 135.053884][ C2] ? is_bpf_text_address (./include/linux/rcupdate.h:310 (discriminator 2) ./include/linux/rcupdate.h:869 (discriminator 2) kernel/bpf/core.c:749 (discriminator 2)) [ 135.053887][ C2] ? stack_access_ok (./arch/x86/include/asm/stacktrace.h:55) [ 135.053889][ C2] ? __unwind_start (arch/x86/kernel/unwind_orc.c:787) [ 135.053891][ C2] ? write_profile (profile.c:?) [ 135.053893][ C2] arch_stack_walk (arch/x86/kernel/stacktrace.c:25) [ 135.053897][ C2] ? set_track_prepare (mm/slub.c:1037) [ 135.053899][ C2] stack_trace_save (kernel/stacktrace.c:122 (discriminator 1)) [ 135.053901][ C2] ? filter_irq_stacks (kernel/stacktrace.c:402) [ 135.053904][ C2] set_track_prepare (mm/slub.c:1037) [ 135.053906][ C2] free_to_partial_list (mm/slub.c:5453) [ 135.053908][ C2] ? qlist_free_all (mm/kasan/quarantine.c:163 (discriminator 2) mm/kasan/quarantine.c:179 (discriminator 2)) [ 135.053910][ C2] qlist_free_all (mm/kasan/quarantine.c:163 (discriminator 2) mm/kasan/quarantine.c:179 (discriminator 2)) [ 135.053912][ C2] kasan_quarantine_reduce (mm/kasan/quarantine.c:286) [ 135.053914][ C2] __kasan_slab_alloc (mm/kasan/common.c:350) [ 135.053916][ C2] kmem_cache_alloc_noprof (./include/linux/kasan.h:253 mm/slub.c:4570 mm/slub.c:4899 mm/slub.c:4906) [ 135.053919][ C2] __alloc_object (mm/kmemleak.c:483 (discriminator 1) mm/kmemleak.c:665 (discriminator 1)) [ 135.053921][ C2] __create_object (mm/kmemleak.c:779) [ 135.053922][ C2] ? kasan_save_track (mm/kasan/common.c:78) [ 135.053924][ C2] kmem_cache_alloc_noprof (./include/linux/kmemleak.h:44 mm/slub.c:4575 mm/slub.c:4899 mm/slub.c:4906) [ 135.053926][ C2] ? static_obj (kernel/locking/lockdep.c:859) [ 135.053929][ C2] mas_preallocate (lib/maple_tree.c:139 (discriminator 7) lib/maple_tree.c:1089 (discriminator 7) lib/maple_tree.c:4961 (discriminator 7)) [ 135.053932][ C2] ? mas_wr_slot_store (lib/maple_tree.c:3228) [ 135.053934][ C2] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 135.053936][ C2] ? __asan_memset (mm/kasan/shadow.c:84 (discriminator 1)) [ 135.053938][ C2] ? init_multi_vma_prep (mm/vma.c:152) [ 135.053940][ C2] commit_merge (mm/vma.h:577 mm/vma.c:754) [ 135.053942][ C2] ? vma_complete (mm/vma.c:283 (discriminator 1)) [ 135.053944][ C2] ? __vma_start_exclude_readers (mm/mmap_lock.c:126 (discriminator 38)) [ 135.053948][ C2] vma_expand (mm/vma.c:1219) [ 135.053950][ C2] ? vms_complete_munmap_vmas (./include/linux/seqlock.h:453) [ 135.053952][ C2] ? mas_prev_setup.constprop.0 (lib/maple_tree.c:759 (discriminator 4)) [ 135.053953][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 135.053955][ C2] relocate_vma_down (mm/vma_exec.c:59) [ 135.053957][ C2] ? vma_mmu_pagesize+0xa0/0xa0 [ 135.053958][ C2] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 135.053960][ C2] ? exec_mmap (fs/exec.c:893) [ 135.053961][ C2] ? is_bpf_text_address (./include/linux/rcupdate.h:871 kernel/bpf/core.c:749) [ 135.053963][ C2] ? rcu_lockdep_current_cpu_online (kernel/rcu/tree.c:4040 (discriminator 3) kernel/rcu/tree.c:4032 (discriminator 3)) [ 135.053965][ C2] ? validate_chain (kernel/locking/lockdep.c:3801 (discriminator 2) kernel/locking/lockdep.c:3821 (discriminator 2) kernel/locking/lockdep.c:3876 (discriminator 2)) [ 135.053968][ C2] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 135.053970][ C2] ? down_write_killable (./include/linux/instrumented.h:55 ./include/linux/atomic/atomic-instrumented.h:4457 kernel/locking/rwsem.c:268 kernel/locking/rwsem.c:1346 kernel/locking/rwsem.c:1361 kernel/locking/rwsem.c:1639) [ 135.053972][ C2] ? down_write_killable (kernel/locking/rwsem.c:1350 (discriminator 1) kernel/locking/rwsem.c:1361 (discriminator 1) kernel/locking/rwsem.c:1639 (discriminator 1)) [ 135.053973][ C2] ? down_write (kernel/locking/rwsem.c:1627) [ 135.053975][ C2] ? do_execveat_common.isra.0 (fs/exec.c:1846) [ 135.053977][ C2] setup_arg_pages (fs/exec.c:690) [ 135.053979][ C2] ? open_exec (fs/exec.c:818) [ 135.053982][ C2] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 135.053984][ C2] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 135.053985][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 135.053987][ C2] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 135.053992][ C2] load_elf_binary (fs/binfmt_elf.c:1028 (discriminator 9)) [ 135.053995][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 135.053997][ C2] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 135.053999][ C2] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 135.054001][ C2] ? load_elf_interp.isra.0 (fs/binfmt_elf.c:693 (discriminator 4)) [ 135.054002][ C2] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 135.054003][ C2] ? exec_binprm (fs/exec.c:1662 fs/exec.c:1696) [ 135.054005][ C2] exec_binprm (fs/exec.c:1664 fs/exec.c:1696) [ 135.054007][ C2] ? check_unsafe_exec (fs/exec.c:1522) [ 135.054009][ C2] bprm_execve (fs/exec.c:1748 fs/exec.c:1724) [ 135.054011][ C2] do_execveat_common.isra.0 (fs/exec.c:1846) [ 135.054013][ C2] __x64_sys_execve (fs/exec.c:1930 (discriminator 2) fs/exec.c:1924 (discriminator 2) fs/exec.c:1924 (discriminator 2)) [ 135.054014][ C2] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 135.054016][ C2] ? trace_hardirqs_off (kernel/trace/trace_preemptirq.c:104 (discriminator 1)) [ 135.054017][ C2] ? exc_page_fault (arch/x86/mm/fault.c:1480 (discriminator 3) arch/x86/mm/fault.c:1527 (discriminator 3)) [ 135.054019][ C2] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121) [ 135.054020][ C2] RIP: 0033:0x7f18637dc15b [ 135.054026][ C2] Code: Unable to access opcode bytes at 0x7f18637dc131. Code starting with the faulting instruction =========================================== [ 135.054027][ C2] RSP: 002b:00007ffe02d9e1d8 EFLAGS: 00000202 ORIG_RAX: 000000000000003b [ 135.054028][ C2] RAX: ffffffffffffffda RBX: 00005602dfb78e60 RCX: 00007f18637dc15b [ 135.054029][ C2] RDX: 00005602dfad6700 RSI: 00005602dfb37bc0 RDI: 00005602dfb78e60 [ 135.054030][ C2] RBP: 00007ffe02d9e2c0 R08: 00005602dfa62850 R09: 0000000000000070 [ 135.054031][ C2] R10: 0000000000000070 R11: 0000000000000202 R12: 00005602dfb78e60 Finger prints: mark_lock_irq:mark_lock:mark_usage:__lock_acquire:_raw_spin_lock