CVE-2025-38666: In the Linux kernel, the following vulnerability has been resolved:  net: appletalk: Fix use-after-free in AARP proxy probe  The AARP proxy‐probe routine (aarp_proxy_probe_network) sends a probe, releases the aarp_lock, sleeps, then re-acquires the lock.  During that window an expire timer thread (__aarp_expire_timer) can remove and kfree() the same entry, leading to a use-after-free.  race condition:           cpu 0                          |            cpu 1     atalk_sendmsg()                     |   atif_proxy_probe_device()     aarp_send_ddp()                     |   aarp_proxy_probe_network()     mod_timer()                         |   lock(aarp_lock) // LOCK!!     timeout around 200ms                |   alloc(aarp_entry)     and then call                       |   proxies[hash] = aarp_entry     aarp_expire_timeout()               |   aarp_send_probe()                                         |   unlock(aarp_lock) // UNLOCK!!     lock(aarp_lock) // LOCK!!           |   msleep(100);     __aarp_expire_timer(&proxies[ct])   |     free(aarp_entry)                    |     unlock(aarp_lock) // UNLOCK!!       |                                         |   lock(aarp_lock) // LOCK!!                                         |   UAF aarp_entry !!  ================================================================== BUG: KASAN: slab-use-after-free in aarp_proxy_probe_network+0x560/0x630 net/appletalk/aarp.c:493 Read of size 4 at addr ffff8880123aa360 by task repro/13278  CPU: 3 UID: 0 PID: 13278 Comm: repro Not tainted 6.15.2 #3 PREEMPT(full) Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x116/0x1b0 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0xc1/0x630 mm/kasan/report.c:521  kasan_report+0xca/0x100 mm/kasan/report.c:634  aarp_proxy_probe_network+0x560/0x630 net/appletalk/aarp.c:493  atif_proxy_probe_device net/appletalk/ddp.c:332 [inline]  atif_ioctl+0xb58/0x16c0 net/appletalk/ddp.c:857  atalk_ioctl+0x198/0x2f0 net/appletalk/ddp.c:1818  sock_do_ioctl+0xdc/0x260 net/socket.c:1190  sock_ioctl+0x239/0x6a0 net/socket.c:1311  vfs_ioctl fs/ioctl.c:51 [inline]  __do_sys_ioctl fs/ioctl.c:906 [inline]  __se_sys_ioctl fs/ioctl.c:892 [inline]  __x64_sys_ioctl+0x194/0x200 fs/ioctl.c:892  do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]  do_syscall_64+0xcb/0x250 arch/x86/entry/syscall_64.c:94  entry_SYSCALL_64_after_hwframe+0x77/0x7f  </TASK>  Allocated:  aarp_alloc net/appletalk/aarp.c:382 [inline]  aarp_proxy_probe_network+0xd8/0x630 net/appletalk/aarp.c:468  atif_proxy_probe_device net/appletalk/ddp.c:332 [inline]  atif_ioctl+0xb58/0x16c0 net/appletalk/ddp.c:857  atalk_ioctl+0x198/0x2f0 net/appletalk/ddp.c:1818  Freed:  kfree+0x148/0x4d0 mm/slub.c:4841  __aarp_expire net/appletalk/aarp.c:90 [inline]  __aarp_expire_timer net/appletalk/aarp.c:261 [inline]  aarp_expire_timeout+0x480/0x6e0 net/appletalk/aarp.c:317  The buggy address belongs to the object at ffff8880123aa300  which belongs to the cache kmalloc-192 of size 192 The buggy address is located 96 bytes inside of  freed 192-byte region [ffff8880123aa300, ffff8880123aa3c0)  Memory state around the buggy address:  ffff8880123aa200: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ffff8880123aa280: 00 00 00 00 fc fc fc fc fc fc fc fc fc fc fc fc >ffff8880123aa300: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb                                                        ^  ffff8880123aa380: fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc fc  ffff8880123aa400: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ==================================================================