Oops: general protection fault, probably for non-canonical address 0xdffffc000000000c: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000060-0x0000000000000067] CPU: 2 UID: 0 PID: 15975 Comm: syz.0.2281 Tainted: G L syzkaller #0 PREEMPT(full) Tainted: [L]=SOFTLOCKUP Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 RIP: 0010:dummy_queue+0x1ba/0xb90 drivers/usb/gadget/udc/dummy_hcd.c:718 Code: 00 49 83 bc 24 c8 05 00 00 00 0f 84 a8 07 00 00 e8 db 01 3b fa 49 8d 7f 60 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0 74 08 3c 03 0f 8e 53 07 00 00 45 8b 7f 60 31 ff RSP: 0018:ffffc90000538d38 EFLAGS: 00010206 RAX: dffffc0000000000 RBX: ffff888059f1a410 RCX: ffffffff87cea66f RDX: 000000000000000c RSI: ffffffff87cea6e5 RDI: 0000000000000060 RBP: ffff88801da9c248 R08: 0000000000000005 R09: 0000000000000005 R10: 0000000000000003 R11: 0000000000000000 R12: ffff88801da9cc00 R13: ffff888059f1a400 R14: ffff88801da9c240 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff888096de5000(0063) knlGS:00000000f53cbb40 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 00000000f53caff4 CR3: 000000006cb6c000 CR4: 0000000000352ef0 Call Trace: usb_ep_queue+0xfa/0x3c0 drivers/usb/gadget/udc/core.c:305 eth_start_xmit+0x684/0x1390 drivers/usb/gadget/function/u_ether.c:579 ncm_tx_timeout+0x7f/0xb0 drivers/usb/gadget/function/f_ncm.c:1161 __run_hrtimer kernel/time/hrtimer.c:2032 [inline] __hrtimer_run_queues+0x462/0x9c0 kernel/time/hrtimer.c:2096 hrtimer_run_softirq+0x17d/0x2c0 kernel/time/hrtimer.c:2113 handle_softirqs+0x1ea/0x9b0 kernel/softirq.c:622 __do_softirq kernel/softirq.c:656 [inline] invoke_softirq kernel/softirq.c:496 [inline] __irq_exit_rcu+0x162/0x210 kernel/softirq.c:735 irq_exit_rcu+0x9/0x30 kernel/softirq.c:752 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0xa3/0xc0 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 RIP: 0010:lock_acquire+0x5e/0x370 kernel/locking/lockdep.c:5872 Code: 05 3b 55 7e 12 83 f8 07 0f 87 da 00 00 00 48 0f a3 05 c6 3b 3d 0f 0f 82 ac 02 00 00 8b 35 6e 6f 3d 0f 85 f6 0f 85 c7 00 00 00 <48> 8b 44 24 30 65 48 2b 05 dd 54 7e 12 0f 85 ec 02 00 00 48 83 c4 RSP: 0018:ffffc90005b86b60 EFLAGS: 00000206 RAX: 0000000000000046 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff8e181fb5 RDI: ffffffff8c400980 RBP: ffffffff8ebe7f80 R08: 000000000f6c850f R09: 0000000000000007 R10: 0000000000000200 R11: 0000000000000000 R12: 0000000000000002 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 rcu_lock_acquire include/linux/rcupdate.h:300 [inline] rcu_read_lock include/linux/rcupdate.h:840 [inline] class_rcu_constructor include/linux/rcupdate.h:1183 [inline] unwind_next_frame+0xd1/0x2090 arch/x86/kernel/unwind_orc.c:495 arch_stack_walk+0x94/0xf0 arch/x86/kernel/stacktrace.c:25 stack_trace_save+0x8e/0xc0 kernel/stacktrace.c:122 save_stack+0x162/0x1e0 mm/page_owner.c:165 __set_page_owner+0x8c/0x540 mm/page_owner.c:341 set_page_owner include/linux/page_owner.h:32 [inline] post_alloc_hook+0xfd/0x120 mm/page_alloc.c:1859 prep_new_page mm/page_alloc.c:1867 [inline] get_page_from_freelist+0xf48/0x3530 mm/page_alloc.c:3946 __alloc_frozen_pages_noprof+0x299/0x2dc0 mm/page_alloc.c:5304 alloc_pages_mpol+0x1fb/0x540 mm/mempolicy.c:2490 folio_alloc_mpol_noprof+0x36/0x260 mm/mempolicy.c:2509 shmem_alloc_folio+0x135/0x160 mm/shmem.c:1907 shmem_alloc_and_add_folio+0x371/0xd40 mm/shmem.c:1949 shmem_get_folio_gfp+0x6ad/0x1910 mm/shmem.c:2502 shmem_fault+0x1f9/0xa20 mm/shmem.c:2703 __do_fault+0x10b/0x440 mm/memory.c:5425 do_read_fault mm/memory.c:5860 [inline] do_fault+0xa99/0x1750 mm/memory.c:5994 do_pte_missing mm/memory.c:4566 [inline] handle_pte_fault mm/memory.c:6379 [inline] __handle_mm_fault+0x187d/0x2a00 mm/memory.c:6517 handle_mm_fault+0x37b/0xa30 mm/memory.c:6686 faultin_page mm/gup.c:1126 [inline] __get_user_pages+0x1178/0x32a0 mm/gup.c:1428 populate_vma_page_range+0x267/0x3f0 mm/gup.c:1860 __mm_populate+0x107/0x3a0 mm/gup.c:1963 mm_populate include/linux/mm.h:4171 [inline] vm_mmap_pgoff+0x37f/0x470 mm/util.c:586 ksys_mmap_pgoff+0xe4/0x610 mm/mmap.c:606 do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline] __do_fast_syscall_32+0xe7/0x970 arch/x86/entry/syscall_32.c:307 do_fast_syscall_32+0x32/0x70 arch/x86/entry/syscall_32.c:332 entry_SYSENTER_compat_after_hwframe+0x84/0x8e RIP: 0023:0xf701efec Code: Unable to access opcode bytes at 0xf701efc2. RSP: 002b:00000000f53cb50c EFLAGS: 00000292 ORIG_RAX: 00000000000000c0 RAX: ffffffffffffffda RBX: 0000000080000000 RCX: 0000000000b36000 RDX: 0000000006ebbeef RSI: 0000000000008031 RDI: 00000000ffffffff RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000292 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:dummy_queue+0x1ba/0xb90 drivers/usb/gadget/udc/dummy_hcd.c:718 Code: 00 49 83 bc 24 c8 05 00 00 00 0f 84 a8 07 00 00 e8 db 01 3b fa 49 8d 7f 60 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0 74 08 3c 03 0f 8e 53 07 00 00 45 8b 7f 60 31 ff RSP: 0018:ffffc90000538d38 EFLAGS: 00010206 RAX: dffffc0000000000 RBX: ffff888059f1a410 RCX: ffffffff87cea66f RDX: 000000000000000c RSI: ffffffff87cea6e5 RDI: 0000000000000060 RBP: ffff88801da9c248 R08: 0000000000000005 R09: 0000000000000005 R10: 0000000000000003 R11: 0000000000000000 R12: ffff88801da9cc00 R13: ffff888059f1a400 R14: ffff88801da9c240 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff888096de5000(0063) knlGS:00000000f53cbb40 CS: 0010 DS: 002b ES: 002b CR0: 0000000080050033 CR2: 00000000f701f000 CR3: 000000006cb6c000 CR4: 0000000000352ef0 ---------------- Code disassembly (best guess): 0: 00 49 83 add %cl,-0x7d(%rcx) 3: bc 24 c8 05 00 mov $0x5c824,%esp 8: 00 00 add %al,(%rax) a: 0f 84 a8 07 00 00 je 0x7b8 10: e8 db 01 3b fa call 0xfa3b01f0 15: 49 8d 7f 60 lea 0x60(%r15),%rdi 19: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 20: fc ff df 23: 48 89 fa mov %rdi,%rdx 26: 48 c1 ea 03 shr $0x3,%rdx * 2a: 0f b6 04 02 movzbl (%rdx,%rax,1),%eax <-- trapping instruction 2e: 84 c0 test %al,%al 30: 74 08 je 0x3a 32: 3c 03 cmp $0x3,%al 34: 0f 8e 53 07 00 00 jle 0x78d 3a: 45 8b 7f 60 mov 0x60(%r15),%r15d 3e: 31 ff xor %edi,%edi