====================================== | [ 287.635350][ C1] 1 lock held by tc/2331: | [ 287.635425][ C1] #0: ffffffffa1577c00 (rcu_callback){....}-{0:0}, at: rcu_do_batch (./include/linux/rcupdate.h:300 (discriminator 2) kernel/rcu/tree.c:2611 (discriminator 2)) | [ 287.635607][ C1] | [ 287.635607][ C1] stack backtrace: [ 287.635734][ C1] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 287.635736][ C1] Call Trace: [ 287.635738][ C1] [ 287.635739][ C1] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) [ 287.635744][ C1] print_usage_bug.part.0.cold (kernel/locking/lockdep.c:4042) [ 287.635747][ C1] ? filter_irq_stacks (kernel/stacktrace.c:402) [ 287.635750][ C1] mark_lock_irq (kernel/locking/lockdep.c:4013 kernel/locking/lockdep.c:4056 kernel/locking/lockdep.c:4267) [ 287.635752][ C1] ? sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 287.635754][ C1] ? asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 287.635756][ C1] ? save_trace (kernel/locking/lockdep.c:589) [ 287.635757][ C1] ? execmem_alloc (mm/execmem.c:290 mm/execmem.c:339 mm/execmem.c:475) [ 287.635761][ C1] mark_lock (kernel/locking/lockdep.c:4753) [ 287.635763][ C1] mark_usage (kernel/locking/lockdep.c:4642) [ 287.635764][ C1] __lock_acquire (kernel/locking/lockdep.c:5191) [ 287.635766][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 287.635768][ C1] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 287.635772][ C1] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 287.635773][ C1] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 287.635775][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 287.635777][ C1] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 287.635779][ C1] _raw_spin_lock (./include/linux/spinlock_api_smp.h:158 (discriminator 1) kernel/locking/spinlock.c:158 (discriminator 1)) [ 287.635781][ C1] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 287.635782][ C1] tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 287.635784][ C1] tcf_action_rcu_free (net/sched/act_api.c:367 net/sched/act_api.c:378) [ 287.635785][ C1] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2)) [ 287.635787][ C1] rcu_do_batch (kernel/rcu/tree.c:2617) [ 287.635790][ C1] ? trace_rcu_batch_end (./include/trace/events/rcu.h:714 (discriminator 19)) [ 287.635792][ C1] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 287.635794][ C1] ? 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) [ 287.635795][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:470 (discriminator 2) kernel/locking/lockdep.c:4411 (discriminator 2)) [ 287.635797][ C1] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472) [ 287.635798][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 6) kernel/locking/spinlock.c:198 (discriminator 6)) [ 287.635800][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:179 (discriminator 1) kernel/locking/spinlock.c:198 (discriminator 1)) [ 287.635802][ C1] rcu_core (kernel/rcu/tree.c:2869) [ 287.635804][ C1] handle_softirqs (kernel/softirq.c:622) [ 287.635805][ C1] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 287.635808][ C1] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 287.635809][ C1] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1)) [ 287.635811][ C1] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735) [ 287.635813][ C1] irq_exit_rcu (kernel/softirq.c:752) [ 287.635814][ C1] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 287.635816][ C1] [ 287.635817][ C1] [ 287.635817][ C1] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 287.635819][ C1] RIP: 0010:vm_notify (./arch/x86/include/asm/io.h:67 drivers/virtio/virtio_mmio.c:270) [ 287.635824][ C1] Code: 05 00 00 48 b9 00 00 00 00 00 fc ff df 48 89 fe 48 c1 ee 03 48 83 c2 50 0f b6 0c 0e 84 c9 74 05 80 f9 03 7e 0f 8b 40 28 89 02 01 00 00 00 48 83 c4 10 c3 48 89 44 24 08 48 89 14 24 e8 15 bb All code ======== 0: 05 00 00 48 b9 add $0xb9480000,%eax 5: 00 00 add %al,(%rax) 7: 00 00 add %al,(%rax) 9: 00 fc add %bh,%ah b: ff lcall (bad) c: df 48 89 fisttps -0x77(%rax) f: fe 48 c1 decb -0x3f(%rax) 12: ee out %al,(%dx) 13: 03 48 83 add -0x7d(%rax),%ecx 16: c2 50 0f ret $0xf50 19: b6 0c mov $0xc,%dh 1b: 0e (bad) 1c: 84 c9 test %cl,%cl 1e: 74 05 je 0x25 20: 80 f9 03 cmp $0x3,%cl 23: 7e 0f jle 0x34 25: 8b 40 28 mov 0x28(%rax),%eax 28: 89 02 mov %eax,(%rdx) 2a:* b8 01 00 00 00 mov $0x1,%eax <-- trapping instruction 2f: 48 83 c4 10 add $0x10,%rsp 33: c3 ret 34: 48 89 44 24 08 mov %rax,0x8(%rsp) 39: 48 89 14 24 mov %rdx,(%rsp) 3d: e8 .byte 0xe8 3e: 15 .byte 0x15 3f: bb .byte 0xbb Code starting with the faulting instruction =========================================== 0: b8 01 00 00 00 mov $0x1,%eax 5: 48 83 c4 10 add $0x10,%rsp 9: c3 ret a: 48 89 44 24 08 mov %rax,0x8(%rsp) f: 48 89 14 24 mov %rdx,(%rsp) 13: e8 .byte 0xe8 14: 15 .byte 0x15 15: bb .byte 0xbb [ 287.635826][ C1] RSP: 0018:ffa00000007af318 EFLAGS: 00000246 [ 287.635828][ C1] RAX: 0000000000000001 RBX: ff11000005c8a800 RCX: 0000000000000000 [ 287.635829][ C1] RDX: ffa000000001de50 RSI: 1fe2200000b91505 RDI: ff11000005c8a828 [ 287.635830][ C1] RBP: ff11000005c8a842 R08: ffffffff9e33dae9 R09: 1fe2200000ba90b8 [ 287.635831][ C1] R10: ffe21c0000ba90b9 R11: ffe21c0000ba90b9 R12: ffa00000007af3e8 [ 287.635832][ C1] R13: 0000000000000000 R14: ff110000106899c0 R15: ff11000004c3eac8 [ 287.635833][ C1] ? 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) [ 287.635836][ C1] ? 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) [ 287.635837][ C1] virtqueue_notify (drivers/virtio/virtio_ring.c:3036) [ 287.635839][ C1] virtio_fs_enqueue_req (fs/fuse/virtio_fs.c:1481) [ 287.635843][ C1] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 287.635845][ C1] ? fuse_open (fs/fuse/file.c:194 fs/fuse/file.c:283) [ 287.635847][ C1] ? virtio_fs_probe (./include/linux/virtio_config.h:371) [ 287.635849][ C1] ? rcu_lockdep_current_cpu_online (kernel/rcu/tree.c:4040 (discriminator 3) kernel/rcu/tree.c:4032 (discriminator 3)) [ 287.635851][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 287.635853][ C1] ? __create_object (mm/kmemleak.c:785 (discriminator 3)) [ 287.635854][ C1] ? trace_kmem_cache_alloc (./include/trace/events/kmem.h:12 (discriminator 22)) [ 287.635859][ C1] ? __rwlock_init (kernel/locking/spinlock_debug.c:48) [ 287.635861][ C1] ? 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) [ 287.635863][ C1] virtio_fs_send_req (fs/fuse/virtio_fs.c:1517) [ 287.635865][ C1] __fuse_simple_request (fs/fuse/dev.c:602 fs/fuse/dev.c:699) [ 287.635867][ C1] fuse_send_open (fs/fuse/fuse_i.h:1262 fs/fuse/file.c:52) [ 287.635869][ C1] ? fuse_folios_need_send (fs/fuse/file.c:2191) [ 287.635873][ C1] ? __init_waitqueue_head (kernel/sched/wait.c:12) [ 287.635876][ C1] ? fuse_file_alloc (./include/linux/instrumented.h:112 ./include/linux/atomic/atomic-instrumented.h:2031 fs/fuse/file.c:77) [ 287.635878][ C1] fuse_file_open (fs/fuse/file.c:164) [ 287.635880][ C1] fuse_open (fs/fuse/file.c:194 fs/fuse/file.c:283) [ 287.635882][ C1] ? fuse_finish_open (fs/fuse/file.c:234) [ 287.635884][ C1] do_dentry_open (fs/open.c:947) [ 287.635888][ C1] vfs_open (fs/open.c:1079) [ 287.635891][ C1] ? 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) [ 287.635894][ C1] backing_file_open (fs/backing-file.c:47) [ 287.635897][ C1] ovl_open_realfile (fs/overlayfs/file.c:51 (discriminator 1)) [ 287.635900][ C1] ovl_open (fs/overlayfs/file.c:222) [ 287.635902][ C1] ? ovl_llseek (fs/overlayfs/file.c:255) [ 287.635903][ C1] ? 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) [ 287.635905][ C1] ? ovl_llseek (fs/overlayfs/file.c:255) [ 287.635907][ C1] do_dentry_open (fs/open.c:947) [ 287.635909][ C1] vfs_open (fs/open.c:1079) [ 287.635911][ C1] ? may_open (fs/namei.c:4276) [ 287.635914][ C1] ? lookup_open.isra.0 (fs/namei.c:4504) [ 287.635916][ C1] do_open (fs/namei.c:4699) [ 287.635918][ C1] ? init_file.isra.0 (./include/linux/instrumented.h:97 ./include/linux/atomic/atomic-instrumented.h:3223 ./include/linux/file_ref.h:61 fs/file_table.c:229) [ 287.635920][ C1] path_openat (fs/namei.c:4858) [ 287.635922][ C1] ? rcu_lockdep_current_cpu_online (kernel/rcu/tree.c:4040 (discriminator 3) kernel/rcu/tree.c:4032 (discriminator 3)) [ 287.635923][ C1] ? kernel_tmpfile_open (fs/namei.c:4800) [ 287.635925][ C1] ? validate_chain (kernel/locking/lockdep.c:3801 (discriminator 2) kernel/locking/lockdep.c:3821 (discriminator 2) kernel/locking/lockdep.c:3876 (discriminator 2)) [ 287.635927][ C1] ? rcu_lockdep_current_cpu_online (kernel/rcu/tree.c:4040 (discriminator 3) kernel/rcu/tree.c:4032 (discriminator 3)) [ 287.635929][ C1] do_file_open (fs/namei.c:4887) [ 287.635931][ C1] ? path_openat (./include/linux/mount.h:68 (discriminator 3)) [ 287.635934][ C1] ? page_get_link_raw (fs/namei.c:6328) [ 287.635936][ C1] ? 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) [ 287.635938][ C1] ? _raw_spin_unlock (./include/linux/spinlock_api_smp.h:169 (discriminator 1) kernel/locking/spinlock.c:190 (discriminator 1)) [ 287.635939][ C1] ? alloc_fd (./include/linux/spinlock.h:390 fs/file.c:611) [ 287.635942][ C1] do_sys_openat2 (fs/open.c:1364 (discriminator 5)) [ 287.635944][ C1] ? build_open_flags (fs/open.c:1212) [ 287.635947][ C1] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 287.635949][ C1] __x64_sys_openat (fs/open.c:1370 fs/open.c:1386 fs/open.c:1381 fs/open.c:1381) [ 287.635951][ C1] ? exc_page_fault (arch/x86/mm/fault.c:1474 arch/x86/mm/fault.c:1527) [ 287.635953][ C1] ? __ia32_sys_open (fs/open.c:1374) [ 287.635955][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 287.635956][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 287.635958][ C1] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 287.635960][ C1] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 287.635961][ C1] ? trace_hardirqs_off (kernel/trace/trace_preemptirq.c:104 (discriminator 1)) [ 287.635963][ C1] ? exc_page_fault (arch/x86/mm/fault.c:1480 (discriminator 3) arch/x86/mm/fault.c:1527 (discriminator 3)) [ 287.635964][ C1] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121) [ 287.635966][ C1] RIP: 0033:0x7f646f9ed625 [ 287.635968][ C1] Code: 48 89 e5 48 89 55 e0 41 83 e2 40 75 28 89 f2 f7 d2 81 e2 00 00 41 00 74 1c 89 f2 bf 9c ff ff ff 48 89 c6 b8 01 01 00 00 0f 05 <48> 3d 00 f0 ff ff 77 23 5d c3 90 48 8d 4d 10 c7 45 b8 10 00 00 00 All code ======== 0: 48 89 e5 mov %rsp,%rbp 3: 48 89 55 e0 mov %rdx,-0x20(%rbp) 7: 41 83 e2 40 and $0x40,%r10d b: 75 28 jne 0x35 d: 89 f2 mov %esi,%edx f: f7 d2 not %edx 11: 81 e2 00 00 41 00 and $0x410000,%edx 17: 74 1c je 0x35 19: 89 f2 mov %esi,%edx 1b: bf 9c ff ff ff mov $0xffffff9c,%edi 20: 48 89 c6 mov %rax,%rsi 23: b8 01 01 00 00 mov $0x101,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 23 ja 0x55 32: 5d pop %rbp 33: c3 ret 34: 90 nop 35: 48 8d 4d 10 lea 0x10(%rbp),%rcx 39: c7 45 b8 10 00 00 00 movl $0x10,-0x48(%rbp) Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 23 ja 0x2b 8: 5d pop %rbp 9: c3 ret a: 90 nop b: 48 8d 4d 10 lea 0x10(%rbp),%rcx f: c7 45 b8 10 00 00 00 movl $0x10,-0x48(%rbp) [ 287.635969][ C1] RSP: 002b:00007fffbae9e050 EFLAGS: 00000206 ORIG_RAX: 0000000000000101 [ 287.635971][ C1] RAX: ffffffffffffffda RBX: 00007fffbae9e2e0 RCX: 00007f646f9ed625 [ 287.635972][ C1] RDX: 0000000000080000 RSI: 00007fffbae9e0d0 RDI: 00000000ffffff9c [ 287.635973][ C1] RBP: 00007fffbae9e050 R08: 00007fffbae9e2c7 R09: 0000000000000000 [ 287.635974][ C1] R10: 0000000000000000 R11: 0000000000000206 R12: 00007fffbae9e0d0 Finger prints: mark_lock_irq:mark_lock:mark_usage:__lock_acquire:_raw_spin_lock