================================================================== BUG: KASAN: slab-use-after-free in gphonet_set_gadget drivers/usb/gadget/function/f_phonet.c:720 [inline] BUG: KASAN: slab-use-after-free in pn_bind+0xe4/0x550 drivers/usb/gadget/function/f_phonet.c:510 Write of size 8 at addr ffff0000d8a667f8 by task syz.5.322/6115 CPU: 0 UID: 0 PID: 6115 Comm: syz.5.322 Tainted: G L syzkaller #0 PREEMPT Tainted: [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/02/2026 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:499 (C) __dump_stack+0x30/0x40 lib/dump_stack.c:94 dump_stack_lvl+0xd8/0x12c lib/dump_stack.c:120 print_address_description+0xb0/0x238 mm/kasan/report.c:378 print_report+0x68/0x84 mm/kasan/report.c:482 kasan_report+0x8c/0xc4 mm/kasan/report.c:595 __asan_report_store8_noabort+0x20/0x2c mm/kasan/report_generic.c:386 gphonet_set_gadget drivers/usb/gadget/function/f_phonet.c:720 [inline] pn_bind+0xe4/0x550 drivers/usb/gadget/function/f_phonet.c:510 usb_add_function+0x1d0/0x6bc drivers/usb/gadget/composite.c:333 configfs_composite_bind+0xb4c/0x10b8 drivers/usb/gadget/configfs.c:1802 gadget_bind_driver+0x274/0x834 drivers/usb/gadget/udc/core.c:1662 call_driver_probe drivers/base/dd.c:-1 [inline] really_probe+0x29c/0x800 drivers/base/dd.c:706 __driver_probe_device+0x1e0/0x350 drivers/base/dd.c:868 driver_probe_device+0x6c/0x19c drivers/base/dd.c:898 __driver_attach+0x168/0x384 drivers/base/dd.c:1292 bus_for_each_dev+0x128/0x1b4 drivers/base/bus.c:383 driver_attach+0x50/0x60 drivers/base/dd.c:1310 bus_add_driver+0x208/0x500 drivers/base/bus.c:763 driver_register+0x220/0x310 drivers/base/driver.c:174 usb_gadget_register_driver_owner+0xf0/0x25c drivers/usb/gadget/udc/core.c:1752 gadget_dev_desc_UDC_store+0x164/0x22c drivers/usb/gadget/configfs.c:300 flush_write_buffer fs/configfs/file.c:207 [inline] configfs_write_iter+0x27c/0x354 fs/configfs/file.c:229 new_sync_write fs/read_write.c:595 [inline] vfs_write+0x51c/0xa0c fs/read_write.c:687 ksys_write+0x12c/0x228 fs/read_write.c:739 __do_sys_write fs/read_write.c:750 [inline] __se_sys_write fs/read_write.c:747 [inline] __arm64_sys_write+0x84/0x98 fs/read_write.c:747 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49 el0_svc_common+0xec/0x23c arch/arm64/kernel/syscall.c:121 do_el0_svc+0x4c/0x5c arch/arm64/kernel/syscall.c:140 el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:738 el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:757 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:590 Allocated by task 6114: kasan_save_stack mm/kasan/common.c:57 [inline] kasan_save_track+0x40/0x78 mm/kasan/common.c:78 kasan_save_alloc_info+0x44/0x54 mm/kasan/generic.c:570 poison_kmalloc_redzone mm/kasan/common.c:398 [inline] __kasan_kmalloc+0x9c/0xb4 mm/kasan/common.c:415 kasan_kmalloc include/linux/kasan.h:263 [inline] __do_kmalloc_node mm/slub.c:5334 [inline] __kvmalloc_node_noprof+0x460/0x7d8 mm/slub.c:6905 alloc_netdev_mqs+0xac/0xf2c net/core/dev.c:12054 gphonet_setup_default+0x38/0x88 drivers/usb/gadget/function/f_phonet.c:706 phonet_alloc_inst+0x84/0x100 drivers/usb/gadget/function/f_phonet.c:640 try_get_usb_function_instance+0xe4/0x164 drivers/usb/gadget/functions.c:28 usb_get_function_instance+0x24/0xb0 drivers/usb/gadget/functions.c:44 function_make+0x110/0x300 drivers/usb/gadget/configfs.c:626 configfs_mkdir+0x374/0x7d4 fs/configfs/dir.c:1360 vfs_mkdir+0x2dc/0x464 fs/namei.c:5276 filename_mkdirat+0x228/0x3f4 fs/namei.c:5309 __do_sys_mkdirat fs/namei.c:5330 [inline] __se_sys_mkdirat fs/namei.c:5327 [inline] __arm64_sys_mkdirat+0x9c/0xc0 fs/namei.c:5327 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x19c/0x23c arch/arm64/kernel/syscall.c:121 do_el0_svc+0x4c/0x5c arch/arm64/kernel/syscall.c:140 el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:738 el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:757 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:590 Freed by task 6114: kasan_save_stack mm/kasan/common.c:57 [inline] kasan_save_track+0x40/0x78 mm/kasan/common.c:78 kasan_save_free_info+0x58/0x70 mm/kasan/generic.c:584 poison_slab_object mm/kasan/common.c:253 [inline] __kasan_slab_free+0x74/0xa4 mm/kasan/common.c:285 kasan_slab_free include/linux/kasan.h:235 [inline] slab_free_hook mm/slub.c:2677 [inline] slab_free mm/slub.c:6377 [inline] kfree+0x188/0x690 mm/slub.c:6692 kvfree+0x30/0x40 mm/slub.c:6954 free_netdev+0x43c/0x584 net/core/dev.c:12240 gphonet_register_netdev drivers/usb/gadget/function/f_phonet.c:729 [inline] pn_bind+0x114/0x550 drivers/usb/gadget/function/f_phonet.c:511 usb_add_function+0x1d0/0x6bc drivers/usb/gadget/composite.c:333 configfs_composite_bind+0xb4c/0x10b8 drivers/usb/gadget/configfs.c:1802 gadget_bind_driver+0x274/0x834 drivers/usb/gadget/udc/core.c:1662 call_driver_probe drivers/base/dd.c:-1 [inline] really_probe+0x29c/0x800 drivers/base/dd.c:706 __driver_probe_device+0x1e0/0x350 drivers/base/dd.c:868 driver_probe_device+0x6c/0x19c drivers/base/dd.c:898 __driver_attach+0x168/0x384 drivers/base/dd.c:1292 bus_for_each_dev+0x128/0x1b4 drivers/base/bus.c:383 driver_attach+0x50/0x60 drivers/base/dd.c:1310 bus_add_driver+0x208/0x500 drivers/base/bus.c:763 driver_register+0x220/0x310 drivers/base/driver.c:174 usb_gadget_register_driver_owner+0xf0/0x25c drivers/usb/gadget/udc/core.c:1752 gadget_dev_desc_UDC_store+0x164/0x22c drivers/usb/gadget/configfs.c:300 flush_write_buffer fs/configfs/file.c:207 [inline] configfs_write_iter+0x27c/0x354 fs/configfs/file.c:229 new_sync_write fs/read_write.c:595 [inline] vfs_write+0x51c/0xa0c fs/read_write.c:687 ksys_write+0x12c/0x228 fs/read_write.c:739 __do_sys_write fs/read_write.c:750 [inline] __se_sys_write fs/read_write.c:747 [inline] __arm64_sys_write+0x84/0x98 fs/read_write.c:747 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49 el0_svc_common+0x19c/0x23c arch/arm64/kernel/syscall.c:121 do_el0_svc+0x4c/0x5c arch/arm64/kernel/syscall.c:140 el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:738 el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:757 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:590 The buggy address belongs to the object at ffff0000d8a66000 which belongs to the cache kmalloc-cg-4k of size 4096 The buggy address is located 2040 bytes inside of freed 4096-byte region [ffff0000d8a66000, ffff0000d8a67000) The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x118a60 head: order:3 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 memcg:ffff0000c59fbfc1 flags: 0x5ffc00000000040(head|node=0|zone=2|lastcpupid=0x7ff) page_type: f5(slab) raw: 05ffc00000000040 ffff0000c000b500 dead000000000100 dead000000000122 raw: 0000000000000000 0000000800040004 00000000f5000000 ffff0000c59fbfc1 head: 05ffc00000000040 ffff0000c000b500 dead000000000100 dead000000000122 head: 0000000000000000 0000000800040004 00000000f5000000 ffff0000c59fbfc1 head: 05ffc00000000003 fffffdffc3629801 00000000ffffffff 00000000ffffffff head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000008 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff0000d8a66680: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff0000d8a66700: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb >ffff0000d8a66780: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff0000d8a66800: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff0000d8a66880: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ================================================================== ------------[ cut here ]------------ Missing register, driver bug WARNING: net/core/xdp.c:140 at xdp_rxq_info_unreg_mem_model+0x78/0x98 net/core/xdp.c:140, CPU#1: syz.5.322/6115 Modules linked in: CPU: 1 UID: 0 PID: 6115 Comm: syz.5.322 Tainted: G B L syzkaller #0 PREEMPT Tainted: [B]=BAD_PAGE, [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/02/2026 pstate: 63400005 (nZCv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--) pc : xdp_rxq_info_unreg_mem_model+0x78/0x98 net/core/xdp.c:140 lr : xdp_rxq_info_unreg_mem_model+0x78/0x98 net/core/xdp.c:140 sp : ffff8000989174c0 x29: ffff8000989174c0 x28: 1fffe0001c838e56 x27: ffff0000c9b74cd8 x26: 0000000000000000 x25: 1fffe0001b14cc1d x24: ffff0000d8a660e8 x23: 1fffe00019238241 x22: ffff0000c91c120c x21: dfff800000000000 x20: 00000000060e0420 x19: ffff0000c91c1200 x18: 1fffe00034bbbe28 x17: 0000000000000003 x16: ffff800088b27000 x15: 0000000000000000 x14: 0000000000000000 x13: 0000000000000001 x12: 0000000000000000 x11: 0000000000000000 x10: 0000000000000002 x9 : e4825584ede0a500 x8 : e4825584ede0a500 x7 : 0000000000000000 x6 : ffff80008048e8f8 x5 : 0000000000000000 x4 : 0000000000000000 x3 : ffff8000802f8870 x2 : 0000000100000000 x1 : ffff0000c4f7ba80 x0 : 0000000000000000 Call trace: xdp_rxq_info_unreg_mem_model+0x78/0x98 net/core/xdp.c:140 (P) xdp_rxq_info_unreg+0x74/0xdc net/core/xdp.c:154 netif_free_rx_queues net/core/dev.c:11201 [inline] free_netdev+0x1a4/0x584 net/core/dev.c:12210 gphonet_register_netdev drivers/usb/gadget/function/f_phonet.c:729 [inline] pn_bind+0x114/0x550 drivers/usb/gadget/function/f_phonet.c:511 usb_add_function+0x1d0/0x6bc drivers/usb/gadget/composite.c:333 configfs_composite_bind+0xb4c/0x10b8 drivers/usb/gadget/configfs.c:1802 gadget_bind_driver+0x274/0x834 drivers/usb/gadget/udc/core.c:1662 call_driver_probe drivers/base/dd.c:-1 [inline] really_probe+0x29c/0x800 drivers/base/dd.c:706 __driver_probe_device+0x1e0/0x350 drivers/base/dd.c:868 driver_probe_device+0x6c/0x19c drivers/base/dd.c:898 __driver_attach+0x168/0x384 drivers/base/dd.c:1292 bus_for_each_dev+0x128/0x1b4 drivers/base/bus.c:383 driver_attach+0x50/0x60 drivers/base/dd.c:1310 bus_add_driver+0x208/0x500 drivers/base/bus.c:763 driver_register+0x220/0x310 drivers/base/driver.c:174 usb_gadget_register_driver_owner+0xf0/0x25c drivers/usb/gadget/udc/core.c:1752 gadget_dev_desc_UDC_store+0x164/0x22c drivers/usb/gadget/configfs.c:300 flush_write_buffer fs/configfs/file.c:207 [inline] configfs_write_iter+0x27c/0x354 fs/configfs/file.c:229 new_sync_write fs/read_write.c:595 [inline] vfs_write+0x51c/0xa0c fs/read_write.c:687 ksys_write+0x12c/0x228 fs/read_write.c:739 __do_sys_write fs/read_write.c:750 [inline] __se_sys_write fs/read_write.c:747 [inline] __arm64_sys_write+0x84/0x98 fs/read_write.c:747 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49 el0_svc_common+0xec/0x23c arch/arm64/kernel/syscall.c:121 do_el0_svc+0x4c/0x5c arch/arm64/kernel/syscall.c:140 el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:738 el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:757 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:590 irq event stamp: 3435 hardirqs last enabled at (3435): [] raw_spin_rq_unlock_irq kernel/sched/sched.h:1673 [inline] hardirqs last enabled at (3435): [] finish_lock_switch kernel/sched/core.c:5241 [inline] hardirqs last enabled at (3435): [] finish_task_switch+0x234/0x858 kernel/sched/core.c:5359 hardirqs last disabled at (3434): [] __schedule+0x2f8/0x2d80 kernel/sched/core.c:7087 softirqs last enabled at (3346): [] local_bh_enable include/linux/bottom_half.h:33 [inline] softirqs last enabled at (3346): [] put_cpu_fpsimd_context arch/arm64/kernel/fpsimd.c:251 [inline] softirqs last enabled at (3346): [] fpsimd_restore_current_state+0x39c/0x9c8 arch/arm64/kernel/fpsimd.c:1797 softirqs last disabled at (3344): [] local_bh_disable include/linux/bottom_half.h:20 [inline] softirqs last disabled at (3344): [] get_cpu_fpsimd_context arch/arm64/kernel/fpsimd.c:234 [inline] softirqs last disabled at (3344): [] fpsimd_restore_current_state+0x44/0x9c8 arch/arm64/kernel/fpsimd.c:1790 ---[ end trace 0000000000000000 ]--- Unable to handle kernel paging request at virtual address dfff800000000000 KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] Mem abort info: ESR = 0x0000000096000005 EC = 0x25: DABT (current EL), IL = 32 bits SET = 0, FnV = 0 EA = 0, S1PTW = 0 FSC = 0x05: level 1 translation fault Data abort info: ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000 CM = 0, WnR = 0, TnD = 0, TagAccess = 0 GCS = 0, Overlay = 0, DirtyBit = 0 [dfff800000000000] address between user and kernel address ranges Internal error: Oops: 0000000096000005 [#1] SMP Modules linked in: CPU: 0 UID: 0 PID: 6115 Comm: syz.5.322 Tainted: G B W L syzkaller #0 PREEMPT Tainted: [B]=BAD_PAGE, [W]=WARN, [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/02/2026 pstate: 23400005 (nzCv daif +PAN -UAO +TCO +DIT -SSBS BTYPE=--) pc : memcmp+0x30/0x260 lib/string.c:665 lr : bcmp+0x10/0x1c lib/string.c:697 sp : ffff800098917480 x29: ffff8000989174b0 x28: 1fffe0001c838e56 x27: ffff0000c9b74cd8 x26: 0000000000000000 x25: 1fffe0001b14cc1d x24: ffff0000d8a660e8 x23: 1fffe0001b14ccf1 x22: dfff800000000000 x21: 1fffe0001b14cca2 x20: 0000000000000000 x19: ffff0000d8a66000 x18: 1fffe00034bbbe28 x17: 0000000000000003 x16: ffff800088b27000 x15: 0000000000000000 x14: 0000000000000000 x13: 0000000000000001 x12: 0000000000000000 x11: 0000000000000000 x10: dfff800000000000 x9 : 0000000000000000 x8 : ffff0000d8a66d98 x7 : 0000000000000000 x6 : ffff800080b9a3a8 x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000020 x2 : 0000000000000020 x1 : ffff0000d8a66d98 x0 : 0000000000000000 Call trace: memcmp+0x30/0x260 lib/string.c:665 (P) bcmp+0x10/0x1c lib/string.c:697 memcmp include/linux/fortify-string.h:677 [inline] dev_addr_check+0x4c/0x1ec net/core/dev_addr_lists.c:644 dev_addr_flush+0x20/0x5c net/core/dev_addr_lists.c:664 free_netdev+0x218/0x584 net/core/dev.c:12217 gphonet_register_netdev drivers/usb/gadget/function/f_phonet.c:729 [inline] pn_bind+0x114/0x550 drivers/usb/gadget/function/f_phonet.c:511 usb_add_function+0x1d0/0x6bc drivers/usb/gadget/composite.c:333 configfs_composite_bind+0xb4c/0x10b8 drivers/usb/gadget/configfs.c:1802 gadget_bind_driver+0x274/0x834 drivers/usb/gadget/udc/core.c:1662 call_driver_probe drivers/base/dd.c:-1 [inline] really_probe+0x29c/0x800 drivers/base/dd.c:706 __driver_probe_device+0x1e0/0x350 drivers/base/dd.c:868 driver_probe_device+0x6c/0x19c drivers/base/dd.c:898 __driver_attach+0x168/0x384 drivers/base/dd.c:1292 bus_for_each_dev+0x128/0x1b4 drivers/base/bus.c:383 driver_attach+0x50/0x60 drivers/base/dd.c:1310 bus_add_driver+0x208/0x500 drivers/base/bus.c:763 driver_register+0x220/0x310 drivers/base/driver.c:174 usb_gadget_register_driver_owner+0xf0/0x25c drivers/usb/gadget/udc/core.c:1752 gadget_dev_desc_UDC_store+0x164/0x22c drivers/usb/gadget/configfs.c:300 flush_write_buffer fs/configfs/file.c:207 [inline] configfs_write_iter+0x27c/0x354 fs/configfs/file.c:229 new_sync_write fs/read_write.c:595 [inline] vfs_write+0x51c/0xa0c fs/read_write.c:687 ksys_write+0x12c/0x228 fs/read_write.c:739 __do_sys_write fs/read_write.c:750 [inline] __se_sys_write fs/read_write.c:747 [inline] __arm64_sys_write+0x84/0x98 fs/read_write.c:747 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x98/0x244 arch/arm64/kernel/syscall.c:49 el0_svc_common+0xec/0x23c arch/arm64/kernel/syscall.c:121 do_el0_svc+0x4c/0x5c arch/arm64/kernel/syscall.c:140 el0_svc+0x64/0x260 arch/arm64/kernel/entry-common.c:738 el0t_64_sync_handler+0x48/0x148 arch/arm64/kernel/entry-common.c:757 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:590 Code: aa0103e8 aa0003e9 d343fd2b 1200092c (38ea696b) ---[ end trace 0000000000000000 ]--- ---------------- Code disassembly (best guess): 0: aa0103e8 mov x8, x1 4: aa0003e9 mov x9, x0 8: d343fd2b lsr x11, x9, #3 c: 1200092c and w12, w9, #0x7 * 10: 38ea696b ldrsb w11, [x11, x10] <-- trapping instruction