================================================================== BUG: KASAN: use-after-free in pn533_acr122_is_rx_frame_valid+0x151/0x160 drivers/nfc/pn533/usb.c:325 Read of size 1 at addr ffff8881568f1795 by task kworker/u8:39/8738 CPU: 1 UID: 0 PID: 8738 Comm: kworker/u8:39 Tainted: G L syzkaller #0 PREEMPT(full) Tainted: [L]=SOFTLOCKUP Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026 Workqueue: netns cleanup_net Call Trace: dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120 print_address_description+0x55/0x1e0 mm/kasan/report.c:378 print_report+0x58/0x70 mm/kasan/report.c:482 kasan_report+0x117/0x150 mm/kasan/report.c:595 pn533_acr122_is_rx_frame_valid+0x151/0x160 drivers/nfc/pn533/usb.c:325 pn533_recv_frame+0x1c0/0x6d0 drivers/nfc/pn533/pn533.c:2203 __usb_hcd_giveback_urb+0x378/0x540 drivers/usb/core/hcd.c:1657 dummy_timer+0xa91/0x4cf0 drivers/usb/gadget/udc/dummy_hcd.c:2019 __run_hrtimer kernel/time/hrtimer.c:2067 [inline] __hrtimer_run_queues+0x3bc/0xa10 kernel/time/hrtimer.c:2124 hrtimer_run_softirq+0x1e3/0x2e0 kernel/time/hrtimer.c:2141 handle_softirqs+0x226/0x860 kernel/softirq.c:645 __do_softirq kernel/softirq.c:679 [inline] invoke_softirq kernel/softirq.c:519 [inline] __irq_exit_rcu+0xcb/0x220 kernel/softirq.c:758 irq_exit_rcu+0x9/0x30 kernel/softirq.c:775 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1062 [inline] sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1062 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:674 RIP: 0010:__kfree_rcu_sheaf+0x11f/0x6c0 mm/slub.c:6177 Code: 08 0f 83 08 04 00 00 89 ea 83 e2 01 4a 8b 04 ed d0 87 74 8e 4a 8d 34 20 4e 8b 6c 20 48 4d 85 ed 0f 84 c7 00 00 00 41 8b 45 18 <8d> 48 01 41 89 4d 18 4d 89 7c c5 20 41 3b 4e 2c 0f 83 34 01 00 00 RSP: 0018:ffffc90004f87458 EFLAGS: 00000286 RAX: 0000000000000018 RBX: ffffffff822c3a81 RCX: 8000000000000002 RDX: 0000000000000000 RSI: ffff8880b8740ab8 RDI: ffffffff8c6d9a20 RBP: 0000000000000000 R08: ffffffff822c3a81 R09: 0000000000000000 R10: dffffc0000000000 R11: fffff520009f0e90 R12: ffffffff9396eab8 R13: ffff88801eefc200 R14: ffff88801b049dc0 R15: ffff88805675eb00 kfree_rcu_sheaf mm/slab_common.c:1688 [inline] kvfree_call_rcu+0xa1/0x430 mm/slab_common.c:2037 drop_sysctl_table+0x389/0x550 fs/proc/proc_sysctl.c:1520 unregister_sysctl_table+0x41/0x60 fs/proc/proc_sysctl.c:1541 mpls_dev_sysctl_unregister+0x8b/0xc0 net/mpls/af_mpls.c:1477 mpls_dev_notify+0xb52/0xd30 net/mpls/af_mpls.c:1695 notifier_call_chain+0x1a5/0x3d0 kernel/notifier.c:85 call_netdevice_notifiers_extack net/core/dev.c:2313 [inline] call_netdevice_notifiers net/core/dev.c:2327 [inline] unregister_netdevice_many_notify+0x17f9/0x2140 net/core/dev.c:12518 ops_exit_rtnl_list net/core/net_namespace.c:188 [inline] ops_undo_list+0x391/0x8d0 net/core/net_namespace.c:249 cleanup_net+0x572/0x810 net/core/net_namespace.c:706 process_one_work kernel/workqueue.c:3396 [inline] process_scheduled_works+0xc3d/0x1630 kernel/workqueue.c:3479 worker_thread+0xa47/0xfb0 kernel/workqueue.c:3560 kthread+0x38b/0x480 kernel/kthread.c:436 ret_from_fork+0x514/0xb70 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1568f1 flags: 0x57ff00000000000(node=1|zone=2|lastcpupid=0x7ff) raw: 057ff00000000000 ffffea00055a3c48 ffffea00055a3c48 0000000000000000 raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner info is not present (never set?) Memory state around the buggy address: ffff8881568f1680: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff8881568f1700: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff >ffff8881568f1780: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ^ ffff8881568f1800: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff8881568f1880: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ================================================================== ---------------- Code disassembly (best guess): 0: 08 0f or %cl,(%rdi) 2: 83 08 04 orl $0x4,(%rax) 5: 00 00 add %al,(%rax) 7: 89 ea mov %ebp,%edx 9: 83 e2 01 and $0x1,%edx c: 4a 8b 04 ed d0 87 74 mov -0x718b7830(,%r13,8),%rax 13: 8e 14: 4a 8d 34 20 lea (%rax,%r12,1),%rsi 18: 4e 8b 6c 20 48 mov 0x48(%rax,%r12,1),%r13 1d: 4d 85 ed test %r13,%r13 20: 0f 84 c7 00 00 00 je 0xed 26: 41 8b 45 18 mov 0x18(%r13),%eax * 2a: 8d 48 01 lea 0x1(%rax),%ecx <-- trapping instruction 2d: 41 89 4d 18 mov %ecx,0x18(%r13) 31: 4d 89 7c c5 20 mov %r15,0x20(%r13,%rax,8) 36: 41 3b 4e 2c cmp 0x2c(%r14),%ecx 3a: 0f 83 34 01 00 00 jae 0x174