====================================== | [ 18.868119][ C2] #2: ffffffff97d794e0 (rcu_read_lock){....}-{1:3}, at: unwind_next_frame (./include/linux/rcupdate.h:331 ./include/linux/rcupdate.h:841 ./include/linux/rcupdate.h:1155 arch/x86/kernel/unwind_orc.c:479) | [ 18.868487][ C2] #3: ffffffff97d793c0 (rcu_callback){....}-{0:0}, at: rcu_do_batch (./include/linux/rcupdate.h:331 kernel/rcu/tree.c:2570) | [ 18.868855][ C2] | [ 18.868855][ C2] stack backtrace: [ 18.869121][ C2] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 18.869123][ C2] Call Trace: [ 18.869125][ C2] [ 18.869126][ C2] dump_stack_lvl (lib/dump_stack.c:123) [ 18.869132][ C2] print_usage_bug.part.0 (kernel/locking/lockdep.c:4048) [ 18.869137][ C2] mark_lock_irq (kernel/locking/lockdep.c:4013 kernel/locking/lockdep.c:4059 kernel/locking/lockdep.c:4270) [ 18.869144][ C2] mark_lock (kernel/locking/lockdep.c:4756) [ 18.869148][ C2] mark_usage (kernel/locking/lockdep.c:4645) [ 18.869152][ C2] __lock_acquire (kernel/locking/lockdep.c:5194) [ 18.869155][ C2] ? unwind_next_frame (./include/linux/rcupdate.h:874 ./include/linux/rcupdate.h:1155 arch/x86/kernel/unwind_orc.c:479) [ 18.869159][ C2] ? qlist_free_all (mm/kasan/quarantine.c:174) [ 18.869162][ C2] lock_acquire.part.0 (kernel/locking/lockdep.c:473 kernel/locking/lockdep.c:5873) [ 18.869166][ C2] ? xa_set_mark (lib/xarray.c:2076 lib/xarray.c:2146) [ 18.869169][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:745) [ 18.869174][ C2] ? lock_acquire (./include/trace/events/lock.h:24 kernel/locking/lockdep.c:5834) [ 18.869177][ C2] ? xa_set_mark (lib/xarray.c:2076 lib/xarray.c:2146) [ 18.869181][ C2] _raw_spin_lock (./include/linux/spinlock_api_smp.h:134 kernel/locking/spinlock.c:154) [ 18.869184][ C2] ? xa_set_mark (lib/xarray.c:2076 lib/xarray.c:2146) [ 18.869187][ C2] xa_set_mark (lib/xarray.c:2076 lib/xarray.c:2146) [ 18.869189][ C2] ? __pfx_xa_set_mark (lib/xarray.c:2144) [ 18.869192][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5240) [ 18.869197][ C2] ? find_held_lock (kernel/locking/lockdep.c:5353) [ 18.869202][ C2] ref_tracker_dir_exit (lib/ref_tracker.c:54 lib/ref_tracker.c:223) [ 18.869205][ C2] ? mark_held_locks (kernel/locking/lockdep.c:4328) [ 18.869209][ C2] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:151 kernel/locking/spinlock.c:194) [ 18.869212][ C2] ? __pfx_ref_tracker_dir_exit (lib/ref_tracker.c:213) [ 18.869216][ C2] ? ref_tracker_free (lib/ref_tracker.c:281) [ 18.869219][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5240) [ 18.869223][ C2] ? __pfx_ref_tracker_free (lib/ref_tracker.c:281) [ 18.869225][ C2] ? __sk_destruct (./include/linux/instrumented.h:96 ./include/linux/atomic/atomic-instrumented.h:400 ./include/linux/refcount.h:389 ./include/linux/refcount.h:432 ./include/linux/refcount.h:450 ./include/net/net_namespace.h:287 ./include/net/net_namespace.h:390 net/core/sock.c:2368) [ 18.869230][ C2] ? rcu_do_batch (./include/linux/rcupdate.h:341 kernel/rcu/tree.c:2578) [ 18.869233][ C2] ? rcu_core (kernel/rcu/tree.c:2834) [ 18.869235][ C2] ? handle_softirqs (kernel/softirq.c:580) [ 18.869239][ C2] __put_net (./include/linux/llist.h:238 ./include/linux/llist.h:265 net/core/net_namespace.c:732) [ 18.869244][ C2] ? set_track_prepare (mm/slub.c:936) [ 18.869248][ C2] ? __pfx___put_net (net/core/net_namespace.c:729) [ 18.869252][ C2] ? bpf_sk_storage_free (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:871 net/core/bpf_sk_storage.c:61) [ 18.869257][ C2] __sk_destruct (./include/net/net_namespace.h:288 ./include/net/net_namespace.h:390 net/core/sock.c:2368) [ 18.869260][ C2] ? rcu_do_batch (kernel/rcu/tree.c:2576) [ 18.869263][ C2] rcu_do_batch (./include/linux/rcupdate.h:341 kernel/rcu/tree.c:2578) [ 18.869267][ C2] ? find_held_lock (kernel/locking/lockdep.c:5353) [ 18.869270][ C2] ? __pfx_rcu_do_batch (kernel/rcu/tree.c:2500) [ 18.869274][ C2] ? mark_held_locks (kernel/locking/lockdep.c:4328) [ 18.869277][ C2] ? note_gp_changes (kernel/rcu/tree.c:1326 (discriminator 1)) [ 18.869280][ C2] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4475) [ 18.869285][ C2] rcu_core (kernel/rcu/tree.c:2834) [ 18.869288][ C2] handle_softirqs (kernel/softirq.c:580) [ 18.869294][ C2] __irq_exit_rcu (kernel/softirq.c:614 kernel/softirq.c:453 kernel/softirq.c:680) [ 18.869297][ C2] irq_exit_rcu (kernel/softirq.c:698) [ 18.869300][ C2] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1050 arch/x86/kernel/apic/apic.c:1050) [ 18.869304][ C2] [ 18.869305][ C2] [ 18.869306][ C2] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:702) [ 18.869311][ C2] RIP: 0010:lock_acquire.part.0 (kernel/locking/lockdep.c:5875) [ 18.869315][ C2] Code: ff ff ff 65 0f c1 05 bd f0 15 05 83 f8 01 0f 85 3e 01 00 00 9c 58 f6 c4 02 0f 85 29 01 00 00 48 85 db 74 01 fb 48 8b 44 24 30 <65> 48 2b 05 ee af 15 05 0f 85 3a 01 00 00 48 83 c4 38 5b 5d 41 5c All code ======== 0: ff (bad) 1: ff (bad) 2: ff 65 0f jmp *0xf(%rbp) 5: c1 05 bd f0 15 05 83 roll $0x83,0x515f0bd(%rip) # 0x515f0c9 c: f8 clc d: 01 0f add %ecx,(%rdi) f: 85 3e test %edi,(%rsi) 11: 01 00 add %eax,(%rax) 13: 00 9c 58 f6 c4 02 0f add %bl,0xf02c4f6(%rax,%rbx,2) 1a: 85 29 test %ebp,(%rcx) 1c: 01 00 add %eax,(%rax) 1e: 00 48 85 add %cl,-0x7b(%rax) 21: db 74 01 fb (bad) -0x5(%rcx,%rax,1) 25: 48 8b 44 24 30 mov 0x30(%rsp),%rax 2a:* 65 48 2b 05 ee af 15 sub %gs:0x515afee(%rip),%rax # 0x515b020 <-- trapping instruction 31: 05 32: 0f 85 3a 01 00 00 jne 0x172 38: 48 83 c4 38 add $0x38,%rsp 3c: 5b pop %rbx 3d: 5d pop %rbp 3e: 41 5c pop %r12 Code starting with the faulting instruction =========================================== 0: 65 48 2b 05 ee af 15 sub %gs:0x515afee(%rip),%rax # 0x515aff6 7: 05 8: 0f 85 3a 01 00 00 jne 0x148 e: 48 83 c4 38 add $0x38,%rsp 12: 5b pop %rbx 13: 5d pop %rbp 14: 41 5c pop %r12 [ 18.869318][ C2] RSP: 0018:ffffc90000717720 EFLAGS: 00000206 [ 18.869321][ C2] RAX: d7c0ea2c23bf7c00 RBX: 0000000000000200 RCX: 0000000000000001 [ 18.869323][ C2] RDX: 0000000000000000 RSI: ffffffff9788de21 RDI: ffffffff9705a220 [ 18.869325][ C2] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000001 [ 18.869326][ C2] R10: 0000000000000000 R11: ffffffff97d794e0 R12: 0000000000000002 [ 18.869327][ C2] R13: 0000000000000000 R14: 0000000000000000 R15: ffffffff97d794e0 [ 18.869333][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:745) [ 18.869337][ C2] ? lock_acquire (./include/trace/events/lock.h:24 kernel/locking/lockdep.c:5834) [ 18.869340][ C2] ? unwind_next_frame (./include/linux/rcupdate.h:331 ./include/linux/rcupdate.h:841 ./include/linux/rcupdate.h:1155 arch/x86/kernel/unwind_orc.c:479) [ 18.869344][ C2] unwind_next_frame (./include/linux/rcupdate.h:842 ./include/linux/rcupdate.h:1155 arch/x86/kernel/unwind_orc.c:479) [ 18.869347][ C2] ? unwind_next_frame (./include/linux/rcupdate.h:331 ./include/linux/rcupdate.h:841 ./include/linux/rcupdate.h:1155 arch/x86/kernel/unwind_orc.c:479) [ 18.869350][ C2] ? do_execveat_common.isra.0 (fs/exec.c:1855) [ 18.869354][ C2] ? __lock_release (kernel/locking/lockdep.c:5539) [ 18.869358][ C2] ? __pfx_unwind_next_frame (arch/x86/kernel/unwind_orc.c:469) [ 18.869362][ C2] ? do_execveat_common.isra.0 (fs/exec.c:1855) [ 18.869365][ C2] ? kernel_text_address (kernel/extable.c:99) [ 18.869369][ C2] ? __pfx_stack_trace_consume_entry (kernel/stacktrace.c:83) [ 18.869374][ C2] arch_stack_walk (arch/x86/kernel/stacktrace.c:24) [ 18.869380][ C2] ? do_execveat_common.isra.0 (fs/exec.c:1855) [ 18.869385][ C2] stack_trace_save (kernel/stacktrace.c:123) [ 18.869388][ C2] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 18.869390][ C2] ? check_bytes_and_report (mm/slub.c:1212) [ 18.869396][ C2] ? check_object (mm/slub.c:1289 mm/slub.c:1388) [ 18.869400][ C2] set_track_prepare (mm/slub.c:936) [ 18.869402][ C2] ? kasan_quarantine_reduce (./include/linux/srcu.h:400 mm/kasan/quarantine.c:287) [ 18.869405][ C2] ? __kasan_slab_alloc (mm/kasan/common.c:329) [ 18.869408][ C2] ? __kmalloc_noprof (mm/slub.c:4149 mm/slub.c:4197 mm/slub.c:4327 mm/slub.c:4340) [ 18.869411][ C2] ? load_elf_phdrs (./include/linux/slab.h:909 (discriminator 2) fs/binfmt_elf.c:525 (discriminator 2)) [ 18.869415][ C2] ? load_elf_binary (fs/binfmt_elf.c:954) [ 18.869419][ C2] ? exec_binprm (fs/exec.c:1667 fs/exec.c:1697) [ 18.869422][ C2] ? bprm_execve (fs/exec.c:1749 fs/exec.c:1725) [ 18.869425][ C2] ? do_execveat_common.isra.0 (fs/exec.c:1855) [ 18.869429][ C2] free_to_partial_list (mm/slub.c:4388) [ 18.869432][ C2] ? qlist_free_all (mm/kasan/quarantine.c:163 mm/kasan/quarantine.c:179) [ 18.869436][ C2] qlist_free_all (mm/kasan/quarantine.c:174) [ 18.869439][ C2] ? load_elf_phdrs (./include/linux/slab.h:909 (discriminator 2) fs/binfmt_elf.c:525 (discriminator 2)) [ 18.869442][ C2] kasan_quarantine_reduce (./include/linux/srcu.h:400 mm/kasan/quarantine.c:287) [ 18.869446][ C2] __kasan_slab_alloc (mm/kasan/common.c:329) [ 18.869449][ C2] __kmalloc_noprof (mm/slub.c:4149 mm/slub.c:4197 mm/slub.c:4327 mm/slub.c:4340) [ 18.869453][ C2] load_elf_phdrs (./include/linux/slab.h:909 (discriminator 2) fs/binfmt_elf.c:525 (discriminator 2)) [ 18.869456][ C2] ? __pfx_load_elf_phdrs (fs/binfmt_elf.c:507) [ 18.869459][ C2] ? trace_kmalloc (./include/trace/events/kmem.h:54 (discriminator 21)) [ 18.869463][ C2] ? __kmalloc_cache_noprof (mm/slub.c:4361) [ 18.869467][ C2] load_elf_binary (fs/binfmt_elf.c:954) [ 18.869472][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5240) [ 18.869477][ C2] ? find_held_lock (kernel/locking/lockdep.c:5353) [ 18.869480][ C2] ? __pfx_load_elf_binary (fs/binfmt_elf.c:818) [ 18.869483][ C2] ? exec_binprm (fs/exec.c:1665 fs/exec.c:1697) [ 18.869489][ C2] exec_binprm (fs/exec.c:1667 fs/exec.c:1697) [ 18.869494][ C2] ? __pfx_exec_binprm (fs/exec.c:1681) [ 18.869497][ C2] ? bprm_execve (fs/exec.c:1739 fs/exec.c:1725) [ 18.869503][ C2] bprm_execve (fs/exec.c:1749 fs/exec.c:1725) [ 18.869506][ C2] do_execveat_common.isra.0 (fs/exec.c:1855) [ 18.869512][ C2] __x64_sys_execve (fs/exec.c:2000) [ 18.869515][ C2] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 18.869519][ C2] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 18.869521][ C2] RIP: 0033:0x7fd398ee140b [ 18.869525][ C2] Code: c0 75 03 5f ff e7 c3 48 8b 0d f1 a9 1b 00 f7 d8 64 89 01 48 83 c8 ff c3 0f 1f 80 00 00 00 00 f3 0f 1e fa b8 3b 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d c5 a9 1b 00 f7 d8 64 89 01 48 All code ======== 0: c0 75 03 5f shlb $0x5f,0x3(%rbp) 4: ff e7 jmp *%rdi 6: c3 ret 7: 48 8b 0d f1 a9 1b 00 mov 0x1ba9f1(%rip),%rcx # 0x1ba9ff e: f7 d8 neg %eax 10: 64 89 01 mov %eax,%fs:(%rcx) 13: 48 83 c8 ff or $0xffffffffffffffff,%rax 17: c3 ret 18: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 1f: f3 0f 1e fa endbr64 23: b8 3b 00 00 00 mov $0x3b,%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 8b 0d c5 a9 1b 00 mov 0x1ba9c5(%rip),%rcx # 0x1ba9ff 3a: f7 d8 neg %eax 3c: 64 89 01 mov %eax,%fs:(%rcx) 3f: 48 rex.W 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 8b 0d c5 a9 1b 00 mov 0x1ba9c5(%rip),%rcx # 0x1ba9d5 10: f7 d8 neg %eax 12: 64 89 01 mov %eax,%fs:(%rcx) 15: 48 rex.W [ 18.869527][ C2] RSP: 002b:00007ffeeea5ea18 EFLAGS: 00000246 ORIG_RAX: 000000000000003b [ 18.869530][ C2] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fd398ee140b [ 18.869532][ C2] RDX: 000056155fea16a0 RSI: 000056155fe9f550 RDI: 000056155fec36e0 [ 18.869533][ C2] RBP: 000056155fec36e0 R08: 000056155fea0f50 R09: 0000000000000020 [ 18.869535][ C2] R10: 00000000000001b6 R11: 0000000000000246 R12: 00000000ffffffff Finger prints: mark_lock_irq:mark_lock:mark_usage:__lock_acquire:_raw_spin_lock