====================================== | [ 26.678214][ C1] #2: ff11000005d705d8 (&fsvq->lock){+.+.}-{3:3}, at: virtio_fs_requests_done_work (./include/linux/spinlock.h:342 fs/fuse/virtio_fs.c:839) | [ 26.678386][ C1] #3: ffffffff8a577c00 (rcu_callback){....}-{0:0}, at: rcu_do_batch (./include/linux/rcupdate.h:300 (discriminator 2) kernel/rcu/tree.c:2611 (discriminator 2)) | [ 26.678590][ C1] | [ 26.678590][ C1] stack backtrace: [ 26.678699][ C1] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 26.678700][ C1] Workqueue: events virtio_fs_requests_done_work [ 26.678704][ C1] Call Trace: [ 26.678705][ C1] [ 26.678707][ C1] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) [ 26.678711][ C1] print_usage_bug.part.0.cold (kernel/locking/lockdep.c:4042) [ 26.678714][ C1] ? filter_irq_stacks (kernel/stacktrace.c:402) [ 26.678717][ C1] mark_lock_irq (kernel/locking/lockdep.c:4013 kernel/locking/lockdep.c:4056 kernel/locking/lockdep.c:4267) [ 26.678719][ C1] ? sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 26.678721][ C1] ? asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 26.678723][ C1] ? save_trace (kernel/locking/lockdep.c:589) [ 26.678724][ C1] ? pidfd_getfd (kernel/pid.c:908 kernel/pid.c:927) [ 26.678727][ C1] mark_lock (kernel/locking/lockdep.c:4753) [ 26.678729][ C1] mark_usage (kernel/locking/lockdep.c:4642) [ 26.678730][ C1] __lock_acquire (kernel/locking/lockdep.c:5191) [ 26.678732][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4325) [ 26.678733][ C1] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2)) [ 26.678735][ C1] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 26.678737][ C1] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 26.678739][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 26.678741][ C1] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 26.678743][ C1] _raw_spin_lock (./include/linux/spinlock_api_smp.h:158 (discriminator 1) kernel/locking/spinlock.c:158 (discriminator 1)) [ 26.678744][ C1] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 26.678746][ C1] tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred [ 26.678747][ C1] tcf_action_rcu_free (net/sched/act_api.c:367 net/sched/act_api.c:378) [ 26.678749][ C1] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2)) [ 26.678751][ C1] rcu_do_batch (kernel/rcu/tree.c:2617) [ 26.678753][ C1] ? trace_rcu_batch_end (./include/trace/events/rcu.h:714 (discriminator 19)) [ 26.678755][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:470 (discriminator 2) kernel/locking/lockdep.c:4411 (discriminator 2)) [ 26.678757][ C1] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472) [ 26.678758][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 6) kernel/locking/spinlock.c:198 (discriminator 6)) [ 26.678760][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:179 (discriminator 1) kernel/locking/spinlock.c:198 (discriminator 1)) [ 26.678762][ C1] rcu_core (kernel/rcu/tree.c:2869) [ 26.678764][ C1] handle_softirqs (kernel/softirq.c:622) [ 26.678765][ C1] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 26.678768][ C1] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 26.678769][ C1] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1)) [ 26.678771][ C1] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735) [ 26.678773][ C1] irq_exit_rcu (kernel/softirq.c:752) [ 26.678774][ C1] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37)) [ 26.678776][ C1] [ 26.678776][ C1] [ 26.678777][ C1] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 26.678779][ C1] RIP: 0010:_raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 12) kernel/locking/spinlock.c:198 (discriminator 12)) [ 26.678781][ C1] Code: f5 53 48 8b 74 24 10 48 89 fb 48 83 c7 18 e8 21 7e ca fd 48 89 df e8 a9 d4 ca fd f7 c5 00 02 00 00 75 1f 9c 58 f6 c4 02 75 2f 01 00 00 00 e8 30 62 bd fd 65 8b 05 29 0a fe 01 85 c0 74 12 5b All code ======== 0: f5 cmc 1: 53 push %rbx 2: 48 8b 74 24 10 mov 0x10(%rsp),%rsi 7: 48 89 fb mov %rdi,%rbx a: 48 83 c7 18 add $0x18,%rdi e: e8 21 7e ca fd call 0xfffffffffdca7e34 13: 48 89 df mov %rbx,%rdi 16: e8 a9 d4 ca fd call 0xfffffffffdcad4c4 1b: f7 c5 00 02 00 00 test $0x200,%ebp 21: 75 1f jne 0x42 23: 9c pushf 24: 58 pop %rax 25: f6 c4 02 test $0x2,%ah 28: 75 2f jne 0x59 2a:* bf 01 00 00 00 mov $0x1,%edi <-- trapping instruction 2f: e8 30 62 bd fd call 0xfffffffffdbd6264 34: 65 8b 05 29 0a fe 01 mov %gs:0x1fe0a29(%rip),%eax # 0x1fe0a64 3b: 85 c0 test %eax,%eax 3d: 74 12 je 0x51 3f: 5b pop %rbx Code starting with the faulting instruction =========================================== 0: bf 01 00 00 00 mov $0x1,%edi 5: e8 30 62 bd fd call 0xfffffffffdbd623a a: 65 8b 05 29 0a fe 01 mov %gs:0x1fe0a29(%rip),%eax # 0x1fe0a3a 11: 85 c0 test %eax,%eax 13: 74 12 je 0x27 15: 5b pop %rbx [ 26.678782][ C1] RSP: 0018:ffa0000000467a28 EFLAGS: 00000246 [ 26.678785][ C1] RAX: 0000000000000092 RBX: ff1100000a067730 RCX: ffffffff89690613 [ 26.678786][ C1] RDX: ff1100000596a340 RSI: ffffffff8a001bcb RDI: ffffffff89a6f6c0 [ 26.678787][ C1] RBP: 0000000000000202 R08: 0000000000000000 R09: 0000000000000000 [ 26.678788][ C1] R10: 0000000000000001 R11: 0000000000000001 R12: ff1100000103cc40 [ 26.678788][ C1] R13: ffffffff88529268 R14: 0000000000000000 R15: 000000000002608f [ 26.678789][ C1] ? detach_buf_split_in_order (drivers/virtio/virtio_ring.c:850 drivers/virtio/virtio_ring.c:881) [ 26.678794][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 6) kernel/locking/spinlock.c:198 (discriminator 6)) [ 26.678796][ C1] __delete_object (mm/kmemleak.c:827 (discriminator 3)) [ 26.678799][ C1] kfree (./include/linux/kmemleak.h:50 mm/slub.c:2614 mm/slub.c:6251 mm/slub.c:6566) [ 26.678802][ C1] detach_buf_split_in_order (drivers/virtio/virtio_ring.c:850 drivers/virtio/virtio_ring.c:881) [ 26.678804][ C1] ? do_raw_spin_lock (./include/linux/instrumented.h:55 ./include/linux/atomic/atomic-instrumented.h:1301 ./include/asm-generic/qspinlock.h:111 kernel/locking/spinlock_debug.c:116) [ 26.678806][ C1] virtqueue_get_buf_ctx_split (drivers/virtio/virtio_ring.c:891 drivers/virtio/virtio_ring.c:958) [ 26.678809][ C1] virtio_fs_requests_done_work (fs/fuse/virtio_fs.c:843 (discriminator 1)) [ 26.678811][ C1] ? virtio_fs_complete_req_work (fs/fuse/virtio_fs.c:823) [ 26.678813][ C1] ? process_one_work (kernel/workqueue.c:3290 (discriminator 2)) [ 26.678814][ C1] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 26.678816][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 26.678818][ C1] process_one_work (kernel/workqueue.c:3314) [ 26.678820][ C1] ? pwq_dec_nr_in_flight (kernel/workqueue.c:1822 (discriminator 4)) [ 26.678822][ C1] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 26.678825][ C1] worker_thread (kernel/workqueue.c:3397 kernel/workqueue.c:3478) [ 26.678827][ C1] ? rescuer_thread (./include/linux/list.h:404 (discriminator 3)) [ 26.678828][ C1] ? __kthread_parkme (./include/linux/instrumented.h:82 ./include/asm-generic/bitops/instrumented-non-atomic.h:141 kernel/kthread.c:272) [ 26.678830][ C1] ? rescuer_thread (./include/linux/list.h:404 (discriminator 3)) [ 26.678832][ C1] kthread (kernel/kthread.c:436) [ 26.678833][ C1] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 26.678836][ C1] ? kthread_affine_node (kernel/kthread.c:378) [ 26.678838][ C1] ret_from_fork (arch/x86/kernel/process.c:158) [ 26.678840][ C1] ? arch_exit_to_user_mode_prepare.isra.0 (arch/x86/entry/syscall_64.c:37) [ 26.678842][ C1] ? __switch_to (arch/x86/kernel/process_64.c:403 arch/x86/kernel/process_64.c:663) [ 26.678844][ C1] ? kthread_affine_node (kernel/kthread.c:378) Finger prints: mark_lock_irq:mark_lock:mark_usage:__lock_acquire:_raw_spin_lock