etas_es58x 7-1:1.0: es58x_read_bulk_callback: error -ENOENT ============================= [ BUG: Invalid wait context ] syzkaller #0 Not tainted ----------------------------- dhcpcd-run-hook/6427 is trying to lock: ffff888060909bc8 (&gpc->lock){....}-{3:3}, at: kvm_xen_set_evtchn_fast+0x255/0xd70 arch/x86/kvm/xen.c:1872 other info that might help us debug this: context-{2:2} locks held by dhcpcd-run-hook/6427: 7, last CPU#3: #0: ffff8880380b2d08 (vm_lock){++++}-{0:0}, at: lock_vma_under_rcu+0x11d/0x590 mm/mmap_lock.c:339 #1: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #1: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #1: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: do_fault_around mm/memory.c:6069 [inline] #1: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: do_read_fault mm/memory.c:6103 [inline] #1: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: do_fault+0x9a8/0x1890 mm/memory.c:6246 #2: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #2: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #2: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: filemap_map_pages+0x1d7/0x1f10 mm/filemap.c:3939 #3: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #3: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #3: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: __pte_offset_map+0x9a/0x470 mm/pgtable-generic.c:302 #4: ffff8880398d3f78 (ptlock_ptr(ptdesc)#2){+.+.}-{3:3}, at: spin_lock include/linux/spinlock.h:347 [inline] #4: ffff8880398d3f78 (ptlock_ptr(ptdesc)#2){+.+.}-{3:3}, at: pte_offset_map_lock+0x10f/0x320 mm/pgtable-generic.c:423 #5: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire include/linux/rcupdate.h:309 [inline] #5: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: rcu_read_lock include/linux/rcupdate.h:849 [inline] #5: ffffffff8ffeafe0 (rcu_read_lock){....}-{1:3}, at: page_table_check_set+0x1aa/0x630 mm/page_table_check.c:112 #6: ffff88806090a118 (&kvm->srcu){.?.+}-{0:0}, at: srcu_lock_acquire include/linux/srcu.h:249 [inline] #6: ffff88806090a118 (&kvm->srcu){.?.+}-{0:0}, at: srcu_read_lock include/linux/srcu.h:356 [inline] #6: ffff88806090a118 (&kvm->srcu){.?.+}-{0:0}, at: kvm_xen_set_evtchn_fast+0x23b/0xd70 arch/x86/kvm/xen.c:1870 stack backtrace: CPU: 3 UID: 0 PID: 6427 Comm: dhcpcd-run-hook Not tainted syzkaller #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120 print_lock_invalid_wait_context kernel/locking/lockdep.c:4874 [inline] check_wait_context kernel/locking/lockdep.c:4946 [inline] __lock_acquire+0xfcc/0x1f40 kernel/locking/lockdep.c:5238 lock_acquire kernel/locking/lockdep.c:5942 [inline] lock_acquire+0x1d1/0x380 kernel/locking/lockdep.c:5899 __raw_read_lock_irqsave include/linux/rwlock_api_smp.h:174 [inline] _raw_read_lock_irqsave+0x46/0x90 kernel/locking/spinlock.c:271 kvm_xen_set_evtchn_fast+0x255/0xd70 arch/x86/kvm/xen.c:1872 xen_timer_callback+0x1db/0x2a0 arch/x86/kvm/xen.c:139 __run_hrtimer kernel/time/hrtimer.c:2079 [inline] __hrtimer_run_queues+0x135/0x9a0 kernel/time/hrtimer.c:2136 hrtimer_interrupt+0x441/0xaa0 kernel/time/hrtimer.c:2255 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1051 [inline] __sysvec_apic_timer_interrupt+0x109/0x470 arch/x86/kernel/apic/apic.c:1068 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0x9e/0xc0 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 RIP: 0010:bytes_is_nonzero mm/kasan/generic.c:98 [inline] RIP: 0010:memory_is_nonzero mm/kasan/generic.c:115 [inline] RIP: 0010:memory_is_poisoned_n mm/kasan/generic.c:140 [inline] RIP: 0010:memory_is_poisoned mm/kasan/generic.c:172 [inline] RIP: 0010:check_region_inline mm/kasan/generic.c:191 [inline] RIP: 0010:kasan_check_range+0x180/0x1e0 mm/kasan/generic.c:200 Code: ff ff ff 48 85 d2 74 98 48 01 ea eb 1a 66 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 83 c0 01 48 39 d0 0f 84 79 ff ff ff 80 38 00 <74> ee e9 57 ff ff ff b8 01 00 00 00 c3 cc cc cc cc 48 29 c3 48 89 RSP: 0000:ffffc9000691f828 EFLAGS: 00000246 RAX: ffffed1003cb2cc5 RBX: ffffed1003cb2cc6 RCX: ffffffff82957c72 RDX: ffffed1003cb2cc6 RSI: 0000000000000004 RDI: ffff88801e596628 RBP: ffffed1003cb2cc5 R08: 0000000000000000 R09: ffffed1003cb2cc5 R10: ffff88801e59662b R11: 0000000000000001 R12: ffff88801e5965e0 R13: 0000000000000001 R14: 0000000000000000 R15: 0000000000000000 instrument_atomic_read include/linux/instrumented.h:82 [inline] atomic_read include/linux/atomic/atomic-instrumented.h:32 [inline] page_table_check_set+0x3d2/0x630 mm/page_table_check.c:120 __page_table_check_ptes_set+0x2c0/0x530 mm/page_table_check.c:223 page_table_check_ptes_set include/linux/page_table_check.h:83 [inline] set_ptes include/linux/pgtable.h:447 [inline] set_pte_range+0x65a/0xa20 mm/memory.c:5840 filemap_map_order0_folio mm/filemap.c:3907 [inline] filemap_map_pages+0x736/0x1f10 mm/filemap.c:3978 do_fault_around mm/memory.c:6070 [inline] do_read_fault mm/memory.c:6103 [inline] do_fault+0xa76/0x1890 mm/memory.c:6246 do_pte_missing mm/memory.c:4778 [inline] handle_pte_fault mm/memory.c:6665 [inline] __handle_mm_fault+0x1858/0x2f40 mm/memory.c:6817 handle_mm_fault+0x363/0xa30 mm/memory.c:6984 do_user_addr_fault+0x59c/0x12f0 arch/x86/mm/fault.c:1343 handle_page_fault arch/x86/mm/fault.c:1483 [inline] exc_page_fault+0x6f/0xd0 arch/x86/mm/fault.c:1536 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:595 RIP: 0033:0x7fdb129d6a16 Code: 74 07 83 0d eb 68 12 00 01 31 c0 c3 0f 1f 84 00 00 00 00 00 81 ef b9 00 00 00 83 ff 0c 0f 87 d1 00 00 00 48 8d 15 8a a8 0d 00 <48> 63 04 ba 48 01 d0 ff e0 90 48 8b 05 81 f4 11 00 48 8b 80 70 02 RSP: 002b:00007fff76f3de18 EFLAGS: 00010297 RAX: 0000000000000005 RBX: 00007fdb12c05a80 RCX: 0000000000000000 RDX: 00007fdb12ab12a0 RSI: 0000000000000000 RDI: 0000000000000005 RBP: 00007fff76f3e140 R08: ffffffffffffffff R09: 0000000000000000 R10: 00007fff76f3de70 R11: 0000000000000246 R12: fffffffffffffff8 R13: 0000001f59f9e0d4 R14: 0000000000000000 R15: 00007fdb12c07310 ---------------- Code disassembly (best guess), 2 bytes skipped: 0: ff 48 85 decl -0x7b(%rax) 3: d2 74 98 48 shlb %cl,0x48(%rax,%rbx,4) 7: 01 ea add %ebp,%edx 9: eb 1a jmp 0x25 b: 66 66 2e 0f 1f 84 00 data16 cs nopw 0x0(%rax,%rax,1) 12: 00 00 00 00 16: 66 90 xchg %ax,%ax 18: 48 83 c0 01 add $0x1,%rax 1c: 48 39 d0 cmp %rdx,%rax 1f: 0f 84 79 ff ff ff je 0xffffff9e 25: 80 38 00 cmpb $0x0,(%rax) * 28: 74 ee je 0x18 <-- trapping instruction 2a: e9 57 ff ff ff jmp 0xffffff86 2f: b8 01 00 00 00 mov $0x1,%eax 34: c3 ret 35: cc int3 36: cc int3 37: cc int3 38: cc int3 39: 48 29 c3 sub %rax,%rbx 3c: 48 rex.W 3d: 89 .byte 0x89