======================================
| [ 204.384255][ C3] #0: ffffffffa2177d20 (rcu_read_lock){....}-{1:3}, at: 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))
| [ 204.384464][ C3] #1: ffffffffa2177c00 (rcu_callback){....}-{0:0}, at: rcu_do_batch (./include/linux/rcupdate.h:300 (discriminator 2) kernel/rcu/tree.c:2611 (discriminator 2))
| [ 204.384625][ C3]
| [ 204.384625][ C3] stack backtrace:
[ 204.384738][ C3] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 204.384739][ C3] Call Trace:
[ 204.384741][ C3]
[ 204.384742][ C3] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120)
[ 204.384747][ C3] print_usage_bug.part.0.cold (kernel/locking/lockdep.c:4042)
[ 204.384750][ C3] ? filter_irq_stacks (kernel/stacktrace.c:402)
[ 204.384753][ C3] mark_lock_irq (kernel/locking/lockdep.c:4013 kernel/locking/lockdep.c:4056 kernel/locking/lockdep.c:4267)
[ 204.384754][ C3] ? sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37))
[ 204.384756][ C3] ? asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697)
[ 204.384758][ C3] ? save_trace (kernel/locking/lockdep.c:589)
[ 204.384760][ C3] ? calculate_order (./include/asm-generic/getorder.h:41 mm/slub.c:7520)
[ 204.384764][ C3] mark_lock (kernel/locking/lockdep.c:4753)
[ 204.384765][ C3] mark_usage (kernel/locking/lockdep.c:4642)
[ 204.384767][ C3] __lock_acquire (kernel/locking/lockdep.c:5191)
[ 204.384768][ C3] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 204.384770][ C3] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2))
[ 204.384773][ C3] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1))
[ 204.384774][ C3] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred
[ 204.384776][ C3] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 204.384777][ C3] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22))
[ 204.384779][ C3] _raw_spin_lock (./include/linux/spinlock_api_smp.h:158 (discriminator 1) kernel/locking/spinlock.c:158 (discriminator 1))
[ 204.384781][ C3] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred
[ 204.384782][ C3] tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred
[ 204.384784][ C3] tcf_action_rcu_free (net/sched/act_api.c:367 net/sched/act_api.c:378)
[ 204.384785][ C3] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2))
[ 204.384787][ C3] rcu_do_batch (kernel/rcu/tree.c:2617)
[ 204.384790][ C3] ? trace_rcu_batch_end (./include/trace/events/rcu.h:714 (discriminator 19))
[ 204.384792][ C3] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 204.384793][ C3] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:470 (discriminator 2) kernel/locking/lockdep.c:4411 (discriminator 2))
[ 204.384795][ C3] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472)
[ 204.384797][ C3] rcu_core (kernel/rcu/tree.c:2869)
[ 204.384798][ C3] handle_softirqs (kernel/softirq.c:622)
[ 204.384800][ C3] ? find_held_lock (kernel/locking/lockdep.c:5350)
[ 204.384803][ C3] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535)
[ 204.384804][ C3] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1))
[ 204.384806][ C3] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735)
[ 204.384808][ C3] irq_exit_rcu (kernel/softirq.c:752)
[ 204.384809][ C3] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37))
[ 204.384811][ C3]
[ 204.384811][ C3]
[ 204.384812][ C3] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697)
[ 204.384814][ C3] RIP: 0010:lock_acquire.part.0 (./arch/x86/include/asm/irqflags.h:158 (discriminator 1) kernel/locking/lockdep.c:5871 (discriminator 1))
[ 204.384815][ C3] Code: ff 65 0f c1 05 37 d9 33 04 83 f8 01 4c 8b 14 24 0f 85 30 01 00 00 9c 58 f6 c4 02 0f 85 4d 01 00 00 4d 85 d2 0f 85 16 01 00 00 <48> 8b 44 24 30 65 48 2b 05 a9 92 33 04 0f 85 43 01 00 00 48 83 c4
All code
========
0: ff 65 0f jmp *0xf(%rbp)
3: c1 05 37 d9 33 04 83 roll $0x83,0x433d937(%rip) # 0x433d941
a: f8 clc
b: 01 4c 8b 14 add %ecx,0x14(%rbx,%rcx,4)
f: 24 0f and $0xf,%al
11: 85 30 test %esi,(%rax)
13: 01 00 add %eax,(%rax)
15: 00 9c 58 f6 c4 02 0f add %bl,0xf02c4f6(%rax,%rbx,2)
1c: 85 4d 01 test %ecx,0x1(%rbp)
1f: 00 00 add %al,(%rax)
21: 4d 85 d2 test %r10,%r10
24: 0f 85 16 01 00 00 jne 0x140
2a:* 48 8b 44 24 30 mov 0x30(%rsp),%rax <-- trapping instruction
2f: 65 48 2b 05 a9 92 33 sub %gs:0x43392a9(%rip),%rax # 0x43392e0
36: 04
37: 0f 85 43 01 00 00 jne 0x180
3d: 48 rex.W
3e: 83 .byte 0x83
3f: c4 .byte 0xc4
Code starting with the faulting instruction
===========================================
0: 48 8b 44 24 30 mov 0x30(%rsp),%rax
5: 65 48 2b 05 a9 92 33 sub %gs:0x43392a9(%rip),%rax # 0x43392b6
c: 04
d: 0f 85 43 01 00 00 jne 0x156
13: 48 rex.W
14: 83 .byte 0x83
15: c4 .byte 0xc4
[ 204.384817][ C3] RSP: 0018:ffa0000000617918 EFLAGS: 00000206
[ 204.384819][ C3] RAX: 0000000000000046 RBX: 0000000000000000 RCX: 0ac0d5affe09d4ff
[ 204.384821][ C3] RDX: 0000000000000001 RSI: ffffffffa1bebde8 RDI: ffffffffa166f6c0
[ 204.384822][ C3] RBP: 0000000000000000 R08: 0000000000000001 R09: ff1100001066ae30
[ 204.384822][ C3] R10: 0000000000000200 R11: 0000000000000001 R12: ffffffffa2177d20
[ 204.384823][ C3] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000002
[ 204.384826][ C3] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 204.384827][ C3] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22))
[ 204.384829][ C3] 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))
[ 204.384830][ C3] ? 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))
[ 204.384831][ C3] ? arch_stack_walk (./arch/x86/include/asm/unwind.h:64 arch/x86/kernel/stacktrace.c:24)
[ 204.384835][ C3] ? stack_access_ok (./arch/x86/include/asm/stacktrace.h:55)
[ 204.384837][ C3] ? kasan_save_stack (mm/kasan/common.c:58)
[ 204.384840][ C3] ? kasan_save_stack (mm/kasan/common.c:57)
[ 204.384841][ C3] ? kasan_save_track (mm/kasan/common.c:78)
[ 204.384843][ C3] ? kmem_cache_alloc_noprof (./include/linux/kasan.h:253 mm/slub.c:4570 mm/slub.c:4899 mm/slub.c:4906)
[ 204.384845][ C3] ? __alloc_object (mm/kmemleak.c:483 (discriminator 1) mm/kmemleak.c:665 (discriminator 1))
[ 204.384847][ C3] ? __create_object (mm/kmemleak.c:779)
[ 204.384848][ C3] ? get_stack_info_noinstr (arch/x86/kernel/dumpstack_64.c:173)
[ 204.384849][ C3] ? alloc_empty_file (fs/file_table.c:262 (discriminator 11))
[ 204.384852][ C3] __unwind_start (arch/x86/kernel/unwind_orc.c:787)
[ 204.384853][ C3] ? write_profile (profile.c:?)
[ 204.384856][ C3] arch_stack_walk (./arch/x86/include/asm/unwind.h:64 arch/x86/kernel/stacktrace.c:24)
[ 204.384858][ C3] ? arch_stack_walk (./arch/x86/include/asm/unwind.h:64 arch/x86/kernel/stacktrace.c:24)
[ 204.384860][ C3] stack_trace_save (kernel/stacktrace.c:122 (discriminator 1))
[ 204.384862][ C3] ? filter_irq_stacks (kernel/stacktrace.c:402)
[ 204.384865][ C3] set_track_prepare (mm/slub.c:1038)
[ 204.384868][ C3] __alloc_object (mm/kmemleak.c:701)
[ 204.384869][ C3] __create_object (mm/kmemleak.c:779)
[ 204.384870][ C3] ? kasan_save_track (mm/kasan/common.c:78)
[ 204.384872][ C3] kmem_cache_alloc_noprof (./include/linux/kmemleak.h:44 mm/slub.c:4575 mm/slub.c:4899 mm/slub.c:4906)
[ 204.384875][ C3] alloc_empty_file (fs/file_table.c:262 (discriminator 11))
[ 204.384876][ C3] alloc_file_pseudo (fs/file_table.c:396 (discriminator 8) fs/file_table.c:425 (discriminator 8))
[ 204.384878][ C3] ? alloc_empty_file (./include/linux/percpu_counter.h:71)
[ 204.384880][ C3] ? 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)
[ 204.384881][ C3] ? _raw_spin_unlock (./include/linux/spinlock_api_smp.h:169 (discriminator 1) kernel/locking/spinlock.c:190 (discriminator 1))
[ 204.384883][ C3] sock_alloc_file (net/socket.c:543 (discriminator 1))
[ 204.384886][ C3] __sys_socket (net/socket.c:573 net/socket.c:1815)
[ 204.384888][ C3] ? update_socket_protocol+0x10/0x10
[ 204.384890][ C3] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 204.384892][ C3] __x64_sys_socket (net/socket.c:1820 net/socket.c:1818 net/socket.c:1818)
[ 204.384893][ C3] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472)
[ 204.384895][ C3] ? do_syscall_64 (./include/linux/entry-common.h:177 arch/x86/entry/syscall_64.c:89)
[ 204.384896][ C3] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94)
[ 204.384897][ C3] ? trace_hardirqs_off (kernel/trace/trace_preemptirq.c:104 (discriminator 1))
[ 204.384900][ C3] ? exc_page_fault (arch/x86/mm/fault.c:1480 (discriminator 3) arch/x86/mm/fault.c:1527 (discriminator 3))
[ 204.384902][ C3] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121)
[ 204.384903][ C3] RIP: 0033:0x7f518ec8c89b
[ 204.384905][ C3] Code: 8b 55 f8 64 48 2b 14 25 28 00 00 00 75 02 c9 c3 e8 ea ad 00 00 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa b8 29 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 2d 75 0f 00 f7 d8 64 89 01 48
All code
========
0: 8b 55 f8 mov -0x8(%rbp),%edx
3: 64 48 2b 14 25 28 00 sub %fs:0x28,%rdx
a: 00 00
c: 75 02 jne 0x10
e: c9 leave
f: c3 ret
10: e8 ea ad 00 00 call 0xadff
15: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1)
1c: 00 00 00
1f: f3 0f 1e fa endbr64
23: b8 29 00 00 00 mov $0x29,%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 2d 75 0f 00 mov 0xf752d(%rip),%rcx # 0xf7567
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 2d 75 0f 00 mov 0xf752d(%rip),%rcx # 0xf753d
10: f7 d8 neg %eax
12: 64 89 01 mov %eax,%fs:(%rcx)
15: 48 rex.W
[ 204.384906][ C3] RSP: 002b:00007fff0d31c778 EFLAGS: 00000206 ORIG_RAX: 0000000000000029
[ 204.384908][ C3] RAX: ffffffffffffffda RBX: 000000000049f620 RCX: 00007f518ec8c89b
[ 204.384909][ C3] RDX: 0000000000000000 RSI: 0000000000080003 RDI: 0000000000000010
[ 204.384909][ C3] RBP: 0000000000000005 R08: 00007f518ed84680 R09: 00007f518ed85fa0
[ 204.384910][ C3] R10: 0000000000000000 R11: 0000000000000206 R12: 0000000000000000
Finger prints:
mark_lock_irq:mark_lock:mark_usage:__lock_acquire:_raw_spin_lock