======================================
| [ 84.642156][ C1] #2: ff11000005d305d8 (&fsvq->lock){+.+.}-{3:3}, at: virtio_fs_requests_done_work (./include/linux/spinlock.h:342 fs/fuse/virtio_fs.c:839)
| [ 84.642341][ C1] #3: ffffffffb3577c00 (rcu_callback){....}-{0:0}, at: rcu_do_batch (./include/linux/rcupdate.h:300 (discriminator 2) kernel/rcu/tree.c:2611 (discriminator 2))
| [ 84.642501][ C1]
| [ 84.642501][ C1] stack backtrace:
[ 84.642615][ C1] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 84.642617][ C1] Workqueue: events virtio_fs_requests_done_work
[ 84.642621][ C1] Call Trace:
[ 84.642622][ C1]
[ 84.642624][ C1] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120)
[ 84.642628][ C1] print_usage_bug.part.0.cold (kernel/locking/lockdep.c:4042)
[ 84.642631][ C1] ? filter_irq_stacks (kernel/stacktrace.c:402)
[ 84.642635][ C1] mark_lock_irq (kernel/locking/lockdep.c:4013 kernel/locking/lockdep.c:4056 kernel/locking/lockdep.c:4267)
[ 84.642636][ C1] ? sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37))
[ 84.642639][ C1] ? asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697)
[ 84.642641][ C1] ? save_trace (kernel/locking/lockdep.c:589)
[ 84.642642][ C1] ? virtqueue_enable_cb_prepare_packed (drivers/virtio/virtio_ring.c:2239)
[ 84.642646][ C1] mark_lock (kernel/locking/lockdep.c:4753)
[ 84.642648][ C1] mark_usage (kernel/locking/lockdep.c:4642)
[ 84.642649][ C1] __lock_acquire (kernel/locking/lockdep.c:5191)
[ 84.642651][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4325)
[ 84.642652][ C1] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2))
[ 84.642655][ C1] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1))
[ 84.642657][ C1] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred
[ 84.642658][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 84.642660][ C1] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22))
[ 84.642662][ C1] _raw_spin_lock (./include/linux/spinlock_api_smp.h:158 (discriminator 1) kernel/locking/spinlock.c:158 (discriminator 1))
[ 84.642664][ C1] ? tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred
[ 84.642666][ C1] tcf_mirred_release (./include/linux/spinlock.h:342 net/sched/act_mirred.c:78) act_mirred
[ 84.642667][ C1] tcf_action_rcu_free (net/sched/act_api.c:367 net/sched/act_api.c:378)
[ 84.642669][ C1] ? rcu_do_batch (./include/linux/rcupdate.h:310 (discriminator 2) kernel/rcu/tree.c:2619 (discriminator 2))
[ 84.642671][ C1] rcu_do_batch (kernel/rcu/tree.c:2617)
[ 84.642673][ C1] ? trace_rcu_batch_end (./include/trace/events/rcu.h:714 (discriminator 19))
[ 84.642676][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4325)
[ 84.642677][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:470 (discriminator 2) kernel/locking/lockdep.c:4411 (discriminator 2))
[ 84.642679][ C1] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472)
[ 84.642681][ C1] rcu_core (kernel/rcu/tree.c:2869)
[ 84.642683][ C1] handle_softirqs (kernel/softirq.c:622)
[ 84.642684][ C1] ? find_held_lock (kernel/locking/lockdep.c:5350)
[ 84.642687][ C1] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535)
[ 84.642689][ C1] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1))
[ 84.642691][ C1] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735)
[ 84.642692][ C1] irq_exit_rcu (kernel/softirq.c:752)
[ 84.642694][ C1] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1061 (discriminator 37) arch/x86/kernel/apic/apic.c:1061 (discriminator 37))
[ 84.642695][ C1]
[ 84.642696][ C1]
[ 84.642697][ C1] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697)
[ 84.642698][ C1] RIP: 0010:__unwind_start (arch/x86/kernel/unwind_orc.c:787)
[ 84.642702][ C1] Code: 4c 24 08 85 d2 0f 84 8f 00 00 00 48 bd 00 00 00 00 00 fc ff df 48 c1 e8 03 48 c1 e9 03 4c 8d 2c 28 4c 8d 24 29 eb 26 4c 89 ff 2e dd ff ff 4c 89 f8 48 c1 e8 03 0f b6 04 28 84 c0 74 08 3c 03
All code
========
0: 4c 24 08 rex.WR and $0x8,%al
3: 85 d2 test %edx,%edx
5: 0f 84 8f 00 00 00 je 0x9a
b: 48 bd 00 00 00 00 00 movabs $0xdffffc0000000000,%rbp
12: fc ff df
15: 48 c1 e8 03 shr $0x3,%rax
19: 48 c1 e9 03 shr $0x3,%rcx
1d: 4c 8d 2c 28 lea (%rax,%rbp,1),%r13
21: 4c 8d 24 29 lea (%rcx,%rbp,1),%r12
25: eb 26 jmp 0x4d
27: 4c 89 ff mov %r15,%rdi
2a:* e8 2e dd ff ff call 0xffffffffffffdd5d <-- trapping instruction
2f: 4c 89 f8 mov %r15,%rax
32: 48 c1 e8 03 shr $0x3,%rax
36: 0f b6 04 28 movzbl (%rax,%rbp,1),%eax
3a: 84 c0 test %al,%al
3c: 74 08 je 0x46
3e: 3c 03 cmp $0x3,%al
Code starting with the faulting instruction
===========================================
0: e8 2e dd ff ff call 0xffffffffffffdd33
5: 4c 89 f8 mov %r15,%rax
8: 48 c1 e8 03 shr $0x3,%rax
c: 0f b6 04 28 movzbl (%rax,%rbp,1),%eax
10: 84 c0 test %al,%al
12: 74 08 je 0x1c
14: 3c 03 cmp $0x3,%al
[ 84.642704][ C1] RSP: 0018:ffa000000037f658 EFLAGS: 00000216
[ 84.642706][ C1] RAX: 1ff400000006fede RBX: ffa000000037f740 RCX: ffa000000037f748
[ 84.642707][ C1] RDX: ffa0000000380000 RSI: ff110000024ac640 RDI: ffa000000037f6a8
[ 84.642708][ C1] RBP: dffffc0000000000 R08: ffa000000037f6d0 R09: ffa000000037f6a8
[ 84.642708][ C1] R10: fff3fc000006fee3 R11: fff3fc000006fee3 R12: fff3fc000006fed7
[ 84.642709][ C1] R13: fff3fc000006fed6 R14: ffa000000037f6f0 R15: ffa000000037f6a8
[ 84.642711][ C1] ? __unwind_start (arch/x86/kernel/unwind_orc.c:756)
[ 84.642713][ C1] ? __unwind_start (arch/x86/kernel/unwind_orc.c:787)
[ 84.642714][ C1] ? write_profile (profile.c:?)
[ 84.642716][ C1] arch_stack_walk (./arch/x86/include/asm/unwind.h:64 arch/x86/kernel/stacktrace.c:24)
[ 84.642720][ C1] ? __unwind_start (arch/x86/kernel/unwind_orc.c:741)
[ 84.642722][ C1] ? detach_buf_split_in_order (drivers/virtio/virtio_ring.c:850 drivers/virtio/virtio_ring.c:881)
[ 84.642724][ C1] stack_trace_save (kernel/stacktrace.c:122 (discriminator 1))
[ 84.642726][ C1] ? filter_irq_stacks (kernel/stacktrace.c:402)
[ 84.642728][ C1] ? rcu_lockdep_current_cpu_online (kernel/rcu/tree.c:4040 (discriminator 3) kernel/rcu/tree.c:4032 (discriminator 3))
[ 84.642730][ C1] ? validate_chain (kernel/locking/lockdep.c:3801 (discriminator 2) kernel/locking/lockdep.c:3821 (discriminator 2) kernel/locking/lockdep.c:3876 (discriminator 2))
[ 84.642732][ C1] ? sched_ttwu_pending (kernel/sched/core.c:3807 (discriminator 7))
[ 84.642735][ C1] kasan_save_stack (mm/kasan/common.c:57)
[ 84.642743][ C1] kasan_record_aux_stack (mm/kasan/generic.c:556)
[ 84.642745][ C1] ? __remove_object (mm/kmemleak.c:609)
[ 84.642747][ C1] __call_rcu_common.constprop.0 (kernel/rcu/tree.c:3131)
[ 84.642748][ C1] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472)
[ 84.642750][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:178 (discriminator 6) kernel/locking/spinlock.c:198 (discriminator 6))
[ 84.642752][ C1] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:179 (discriminator 1) kernel/locking/spinlock.c:198 (discriminator 1))
[ 84.642753][ C1] kfree (./include/linux/kmemleak.h:50 mm/slub.c:2614 mm/slub.c:6251 mm/slub.c:6566)
[ 84.642757][ C1] detach_buf_split_in_order (drivers/virtio/virtio_ring.c:850 drivers/virtio/virtio_ring.c:881)
[ 84.642759][ 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)
[ 84.642761][ C1] virtqueue_get_buf_ctx_split (drivers/virtio/virtio_ring.c:891 drivers/virtio/virtio_ring.c:958)
[ 84.642764][ C1] virtio_fs_requests_done_work (fs/fuse/virtio_fs.c:843 (discriminator 1))
[ 84.642766][ C1] ? virtio_fs_complete_req_work (fs/fuse/virtio_fs.c:823)
[ 84.642768][ C1] ? process_one_work (kernel/workqueue.c:3290 (discriminator 2))
[ 84.642770][ C1] ? lock_acquire (./include/trace/events/lock.h:24 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22))
[ 84.642771][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 84.642773][ C1] process_one_work (kernel/workqueue.c:3314)
[ 84.642776][ C1] ? pwq_dec_nr_in_flight (kernel/workqueue.c:1822 (discriminator 4))
[ 84.642777][ C1] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1))
[ 84.642780][ C1] worker_thread (kernel/workqueue.c:3397 kernel/workqueue.c:3478)
[ 84.642782][ C1] ? rescuer_thread (./include/linux/list.h:404 (discriminator 3))
[ 84.642784][ C1] ? __kthread_parkme (./include/linux/instrumented.h:82 ./include/asm-generic/bitops/instrumented-non-atomic.h:141 kernel/kthread.c:272)
[ 84.642786][ C1] ? rescuer_thread (./include/linux/list.h:404 (discriminator 3))
[ 84.642788][ C1] kthread (kernel/kthread.c:436)
[ 84.642790][ C1] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22))
[ 84.642793][ C1] ? kthread_affine_node (kernel/kthread.c:378)
[ 84.642795][ C1] ret_from_fork (arch/x86/kernel/process.c:158)
[ 84.642797][ C1] ? arch_exit_to_user_mode_prepare.isra.0 (arch/x86/entry/syscall_64.c:37)
[ 84.642799][ C1] ? __switch_to (arch/x86/kernel/process_64.c:403 arch/x86/kernel/process_64.c:663)
[ 84.642801][ C1] ? kthread_affine_node (kernel/kthread.c:378)
Finger prints:
mark_lock_irq:mark_lock:mark_usage:__lock_acquire:_raw_spin_lock