====================================== | [ 80.856555][ C3] #2: ffff8880057585d8 (&fsvq->lock){+.+.}-{3:3}, at: virtio_fs_enqueue_req (fs/fuse/virtio_fs.c:1434) | [ 80.856916][ C3] #3: ffffc90000290d60 ((&n->timer)){+.-.}-{0:0}, at: call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1779) | [ 80.857278][ C3] | [ 80.857278][ C3] stack backtrace: [ 80.857526][ C3] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 80.857528][ C3] Call Trace: [ 80.857530][ C3] [ 80.857533][ C3] dump_stack_lvl (lib/dump_stack.c:123) [ 80.857541][ C3] lockdep_rcu_suspicious (kernel/locking/lockdep.c:6848) [ 80.857551][ C3] __icmp_send (./include/net/net_namespace.h:404 ./include/linux/netdevice.h:2669 net/ipv4/icmp.c:616) [ 80.857565][ C3] ? __lock_acquire (kernel/locking/lockdep.c:5228) [ 80.857570][ C3] ? __pfx___icmp_send (net/ipv4/icmp.c:596) [ 80.857586][ C3] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 80.857591][ C3] ? validate_chain (kernel/locking/lockdep.c:3799 kernel/locking/lockdep.c:3819 kernel/locking/lockdep.c:3874) [ 80.857603][ C3] ? __pfx_validate_chain (kernel/locking/lockdep.c:3862) [ 80.857608][ C3] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:230) [ 80.857611][ C3] ? mark_lock (kernel/locking/lockdep.c:4729 (discriminator 3)) [ 80.857638][ C3] ? __lock_acquire (kernel/locking/lockdep.c:5228) [ 80.857647][ C3] ipv4_send_dest_unreach (net/ipv4/route.c:1241) [ 80.857655][ C3] ? neigh_invalidate (net/core/neighbour.c:1008) [ 80.857660][ C3] ? __pfx_ipv4_send_dest_unreach (net/ipv4/route.c:1215) [ 80.857674][ C3] ipv4_link_failure (./include/linux/skbuff.h:1152 ./include/net/route.h:88 net/ipv4/route.c:1250) [ 80.857681][ C3] arp_error_report (./include/net/dst.h:429 net/ipv4/arp.c:296) [ 80.857687][ C3] neigh_invalidate (net/core/neighbour.c:1008) [ 80.857697][ C3] neigh_timer_handler (net/core/neighbour.c:1109 (discriminator 2)) [ 80.857706][ C3] ? __pfx_neigh_timer_handler (net/core/neighbour.c:1032) [ 80.857710][ C3] call_timer_fn (kernel/time/timer.c:1789) [ 80.857713][ C3] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1779) [ 80.857716][ C3] ? call_timer_fn (./include/linux/lockdep.h:31 kernel/time/timer.c:1779) [ 80.857720][ C3] ? __pfx_call_timer_fn (kernel/time/timer.c:1766) [ 80.857724][ C3] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:230) [ 80.857732][ C3] ? mark_held_locks (kernel/locking/lockdep.c:4323) [ 80.857744][ C3] __run_timers (kernel/time/timer.c:1841 kernel/time/timer.c:2414) [ 80.857748][ C3] ? __pfx_neigh_timer_handler (net/core/neighbour.c:1032) [ 80.857759][ C3] ? __pfx___run_timers (kernel/time/timer.c:2385) [ 80.857761][ C3] ? clockevents_program_event (kernel/time/clockevents.c:326) [ 80.857772][ C3] ? do_raw_spin_lock (./arch/x86/include/asm/atomic.h:107 ./include/linux/atomic/atomic-arch-fallback.h:2170 ./include/linux/atomic/atomic-instrumented.h:1302 ./include/asm-generic/qspinlock.h:111 kernel/locking/spinlock_debug.c:116) [ 80.857777][ C3] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [ 80.857780][ C3] ? lock_acquire (kernel/locking/lockdep.c:5824) [ 80.857783][ C3] ? run_timer_softirq (kernel/time/timer.c:2426 kernel/time/timer.c:2418 kernel/time/timer.c:2435 kernel/time/timer.c:2445) [ 80.857794][ C3] run_timer_softirq (kernel/time/timer.c:2427 kernel/time/timer.c:2418 kernel/time/timer.c:2435 kernel/time/timer.c:2445) [ 80.857799][ C3] handle_softirqs (kernel/softirq.c:561) [ 80.857812][ C3] __irq_exit_rcu (kernel/softirq.c:596 kernel/softirq.c:435 kernel/softirq.c:662) [ 80.857815][ C3] irq_exit_rcu (kernel/softirq.c:680) [ 80.857818][ C3] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1049 arch/x86/kernel/apic/apic.c:1049) [ 80.857824][ C3] [ 80.857825][ C3] [ 80.857827][ C3] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:702) [ 80.857832][ C3] RIP: 0010:_raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:152 kernel/locking/spinlock.c:194) [ 80.857838][ C3] Code: 10 e8 01 f2 63 fd 48 89 ef e8 49 62 64 fd 81 e3 00 02 00 00 75 1d 9c 58 f6 c4 02 75 29 48 85 db 74 01 fb 65 ff 0d 95 5f 2b 48 <74> 0e 5b 5d c3 cc cc cc cc e8 df e8 89 fd eb dc 0f 1f 44 00 00 5b All code ======== 0: 10 e8 adc %ch,%al 2: 01 f2 add %esi,%edx 4: 63 fd movsxd %ebp,%edi 6: 48 89 ef mov %rbp,%rdi 9: e8 49 62 64 fd call 0xfffffffffd646257 e: 81 e3 00 02 00 00 and $0x200,%ebx 14: 75 1d jne 0x33 16: 9c pushf 17: 58 pop %rax 18: f6 c4 02 test $0x2,%ah 1b: 75 29 jne 0x46 1d: 48 85 db test %rbx,%rbx 20: 74 01 je 0x23 22: fb sti 23: 65 ff 0d 95 5f 2b 48 decl %gs:0x482b5f95(%rip) # 0x482b5fbf 2a:* 74 0e je 0x3a <-- trapping instruction 2c: 5b pop %rbx 2d: 5d pop %rbp 2e: c3 ret 2f: cc int3 30: cc int3 31: cc int3 32: cc int3 33: e8 df e8 89 fd call 0xfffffffffd89e917 38: eb dc jmp 0x16 3a: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 3f: 5b pop %rbx Code starting with the faulting instruction =========================================== 0: 74 0e je 0x10 2: 5b pop %rbx 3: 5d pop %rbp 4: c3 ret 5: cc int3 6: cc int3 7: cc int3 8: cc int3 9: e8 df e8 89 fd call 0xfffffffffd89e8ed e: eb dc jmp 0xffffffffffffffec 10: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 15: 5b pop %rbx [ 80.857840][ C3] RSP: 0000:ffffc900013d7050 EFLAGS: 00000286 [ 80.857843][ C3] RAX: 0000000000000002 RBX: 0000000000000200 RCX: 1ffffffff75e9d9c [ 80.857846][ C3] RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffffb7d86781 [ 80.857847][ C3] RBP: ffff888001040f40 R08: 0000000000000001 R09: fffffbfff75e69e8 [ 80.857849][ C3] R10: ffffffffbaf34f47 R11: ffff8880097cc5c0 R12: ffff888001040f40 [ 80.857851][ C3] R13: ffffea00002fee00 R14: ffff888001043240 R15: ffff88800bfbb800 [ 80.857863][ C3] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:151 kernel/locking/spinlock.c:194) [ 80.857872][ C3] get_partial_node.part.0 (mm/slub.c:2870) [ 80.857883][ C3] ? virtqueue_add_split (drivers/virtio/virtio_ring.c:493 drivers/virtio/virtio_ring.c:564) [ 80.857888][ C3] ___slab_alloc (mm/slub.c:2831 mm/slub.c:2948 mm/slub.c:3806) [ 80.857890][ C3] ? kasan_save_stack (mm/kasan/common.c:48) [ 80.857894][ C3] ? kasan_save_track (./arch/x86/include/asm/current.h:49 mm/kasan/common.c:60 mm/kasan/common.c:69) [ 80.857896][ C3] ? virtqueue_add_split (drivers/virtio/virtio_ring.c:493 drivers/virtio/virtio_ring.c:564) [ 80.857900][ C3] ? ___slab_alloc (mm/slub.c:3658) [ 80.857908][ C3] ? page_cache_ra_unbounded (./include/linux/fs.h:932 mm/readahead.c:299) [ 80.857910][ C3] ? filemap_fault (mm/filemap.c:3292 mm/filemap.c:3433) [ 80.857914][ C3] ? __do_fault (mm/memory.c:4977) [ 80.857918][ C3] ? do_pte_missing (mm/memory.c:5392 mm/memory.c:5526 mm/memory.c:4047) [ 80.857921][ C3] ? handle_pte_fault (mm/memory.c:5889) [ 80.857924][ C3] ? __handle_mm_fault (mm/memory.c:6032) [ 80.857931][ C3] ? virtqueue_add_split (drivers/virtio/virtio_ring.c:493 drivers/virtio/virtio_ring.c:564) [ 80.857935][ C3] ? __kmalloc_noprof (mm/slub.c:3916 mm/slub.c:3991 mm/slub.c:4152 mm/slub.c:4293 mm/slub.c:4306) [ 80.857938][ C3] __kmalloc_noprof (mm/slub.c:3916 mm/slub.c:3991 mm/slub.c:4152 mm/slub.c:4293 mm/slub.c:4306) [ 80.857948][ C3] virtqueue_add_split (drivers/virtio/virtio_ring.c:493 drivers/virtio/virtio_ring.c:564) [ 80.857952][ C3] ? usage_skip (kernel/locking/lockdep.c:2316) [ 80.857966][ C3] ? __pfx_virtqueue_add_split (drivers/virtio/virtio_ring.c:538) [ 80.857973][ C3] ? kasan_save_track (./arch/x86/include/asm/current.h:49 mm/kasan/common.c:60 mm/kasan/common.c:69) [ 80.857976][ C3] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5816) [ 80.857987][ C3] virtqueue_add_sgs (drivers/virtio/virtio_ring.c:2282 drivers/virtio/virtio_ring.c:2316) [ 80.857999][ C3] virtio_fs_enqueue_req (fs/fuse/virtio_fs.c:1441) [ 80.858013][ C3] ? __pfx_virtio_fs_enqueue_req (fs/fuse/virtio_fs.c:1377) [ 80.858026][ C3] ? find_held_lock (kernel/locking/lockdep.c:5341) [ 80.858033][ C3] ? __lock_release (kernel/locking/lockdep.c:5527) [ 80.858036][ C3] ? fuse_get_unique (fs/fuse/dev.c:222) [ 80.858041][ C3] ? __pfx___lock_release (kernel/locking/lockdep.c:5503) [ 80.858044][ C3] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5816) [ 80.858050][ C3] ? do_raw_spin_lock (./arch/x86/include/asm/atomic.h:107 ./include/linux/atomic/atomic-arch-fallback.h:2170 ./include/linux/atomic/atomic-instrumented.h:1302 ./include/asm-generic/qspinlock.h:111 kernel/locking/spinlock_debug.c:116) [ 80.858055][ C3] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [ 80.858060][ C3] ? fuse_get_unique (fs/fuse/dev.c:222) [ 80.858065][ C3] ? do_raw_spin_unlock (./arch/x86/include/asm/atomic.h:23 ./include/linux/atomic/atomic-arch-fallback.h:457 ./include/linux/atomic/atomic-instrumented.h:33 ./include/asm-generic/qspinlock.h:57 kernel/locking/spinlock_debug.c:101 kernel/locking/spinlock_debug.c:141) [ 80.858074][ C3] virtio_fs_send_req (fs/fuse/virtio_fs.c:1500) [ 80.858077][ C3] ? fuse_send_one (fs/fuse/dev.c:305) [ 80.858084][ C3] flush_bg_queue (fs/fuse/dev.c:323) [ 80.858096][ C3] fuse_request_queue_background (./include/linux/spinlock.h:391 fs/fuse/dev.c:617) [ 80.858105][ C3] fuse_simple_background (fs/fuse/dev.c:642) [ 80.858111][ C3] fuse_send_readpages (fs/fuse/file.c:993) [ 80.858122][ C3] fuse_readahead (fs/fuse/file.c:1031) [ 80.858139][ C3] ? __pfx_fuse_readahead (fs/fuse/file.c:1004) [ 80.858146][ C3] ? __lock_release (kernel/locking/lockdep.c:5527) [ 80.858149][ C3] ? __folio_batch_add_and_move (./include/linux/local_lock_internal.h:38 mm/swap.c:201) [ 80.858154][ C3] ? __pfx___lock_release (kernel/locking/lockdep.c:5503) [ 80.858157][ C3] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5816) [ 80.858169][ C3] read_pages (mm/readahead.c:161) [ 80.858172][ C3] ? __folio_batch_add_and_move (./include/linux/local_lock_internal.h:38 mm/swap.c:201) [ 80.858183][ C3] ? __pfx_read_pages (mm/readahead.c:148) [ 80.858204][ C3] page_cache_ra_unbounded (./include/linux/fs.h:932 mm/readahead.c:299) [ 80.858218][ C3] filemap_fault (mm/filemap.c:3292 mm/filemap.c:3433) [ 80.858225][ C3] ? __lock_release (kernel/locking/lockdep.c:5527) [ 80.858228][ C3] ? do_fault_around (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 mm/memory.c:5353) [ 80.858232][ C3] ? __pfx___lock_release (kernel/locking/lockdep.c:5503) [ 80.858237][ C3] ? __pfx_filemap_fault (mm/filemap.c:3406) [ 80.858248][ C3] ? do_fault_around (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 mm/memory.c:5353) [ 80.858251][ C3] ? __pfx_filemap_map_pages (mm/filemap.c:3767) [ 80.858260][ C3] __do_fault (mm/memory.c:4977) [ 80.858266][ C3] do_pte_missing (mm/memory.c:5392 mm/memory.c:5526 mm/memory.c:4047) [ 80.858269][ C3] ? handle_pte_fault (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 ./include/linux/pgtable.h:136 mm/memory.c:5883) [ 80.858277][ C3] handle_pte_fault (mm/memory.c:5889) [ 80.858284][ C3] ? __pfx_handle_pte_fault (mm/memory.c:5846) [ 80.858298][ C3] __handle_mm_fault (mm/memory.c:6032) [ 80.858303][ C3] ? __pfx___handle_mm_fault (mm/memory.c:5941) [ 80.858320][ C3] ? __pfx___lock_release (kernel/locking/lockdep.c:5503) [ 80.858325][ C3] ? __pfx_lock_vma_under_rcu (mm/memory.c:6357) [ 80.858333][ C3] handle_mm_fault (mm/memory.c:6213) [ 80.858338][ C3] ? __pfx_handle_mm_fault (mm/memory.c:6168) [ 80.858344][ C3] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4639) [ 80.858347][ C3] ? trace_rcu_segcb_stats (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 ./include/linux/cpumask.h:570 ./include/linux/cpumask.h:1116 ./include/trace/events/rcu.h:537) [ 80.858356][ C3] do_user_addr_fault (arch/x86/mm/fault.c:1338) [ 80.858370][ C3] exc_page_fault (./arch/x86/include/asm/irqflags.h:26 ./arch/x86/include/asm/irqflags.h:87 ./arch/x86/include/asm/irqflags.h:147 arch/x86/mm/fault.c:1489 arch/x86/mm/fault.c:1539) [ 80.858376][ C3] asm_exc_page_fault (./arch/x86/include/asm/idtentry.h:623) [ 80.858379][ C3] RIP: 0033:0x7f98580f4248 [ 80.858383][ C3] Code: ff ff 66 0f 6f 0c 0e 66 0f 73 d8 0e 66 0f 73 db 0e e9 3c 01 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 90 66 0f ef c0 66 0f 6f 17 <66> 0f 6f 0e 66 0f 74 c1 66 0f 73 fa 01 66 0f 74 d1 66 0f f8 d0 66 All code ======== 0: ff (bad) 1: ff 66 0f jmp *0xf(%rsi) 4: 6f outsl %ds:(%rsi),(%dx) 5: 0c 0e or $0xe,%al 7: 66 0f 73 d8 0e psrldq $0xe,%xmm0 c: 66 0f 73 db 0e psrldq $0xe,%xmm3 11: e9 3c 01 00 00 jmp 0x152 16: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1) 1d: 00 00 00 00 21: 90 nop 22: 66 0f ef c0 pxor %xmm0,%xmm0 26: 66 0f 6f 17 movdqa (%rdi),%xmm2 2a:* 66 0f 6f 0e movdqa (%rsi),%xmm1 <-- trapping instruction 2e: 66 0f 74 c1 pcmpeqb %xmm1,%xmm0 32: 66 0f 73 fa 01 pslldq $0x1,%xmm2 37: 66 0f 74 d1 pcmpeqb %xmm1,%xmm2 3b: 66 0f f8 d0 psubb %xmm0,%xmm2 3f: 66 data16 Code starting with the faulting instruction =========================================== 0: 66 0f 6f 0e movdqa (%rsi),%xmm1 4: 66 0f 74 c1 pcmpeqb %xmm1,%xmm0 8: 66 0f 73 fa 01 pslldq $0x1,%xmm2 d: 66 0f 74 d1 pcmpeqb %xmm1,%xmm2 11: 66 0f f8 d0 psubb %xmm0,%xmm2 15: 66 data16 [ 80.858385][ C3] RSP: 002b:00007ffe2cac0ba8 EFLAGS: 00010212 [ 80.858387][ C3] RAX: 000000000000000b RBX: 00007f9857d8080c RCX: 000000000000000c [ 80.858389][ C3] RDX: 000000000000ffff RSI: 00007f9857d80800 RDI: 00007f98580588b0 [ 80.858390][ C3] RBP: 00007f98580588bb R08: 0000000000000000 R09: fffffffffffdaea8 [ 80.858392][ C3] R10: 00007f98580f4240 R11: 0000000000000246 R12: 0000000000000000 Finger prints: lockdep_rcu_suspicious:__icmp_send:ipv4_send_dest_unreach:ipv4_link_failure:arp_error_report