==================================================================
BUG: KASAN: slab-use-after-free in xfs_inode_item_push+0x28f/0x2e0 fs/xfs/xfs_inode_item.c:797
Read of size 8 at addr ffff88805a838bb8 by task xfsaild/loop3/7479

CPU: 0 UID: 0 PID: 7479 Comm: xfsaild/loop3 Not tainted 6.15.0-rc6-syzkaller-00188-gfee3e843b309 #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
Call Trace:
 <TASK>
 dump_stack_lvl+0x189/0x250 lib/dump_stack.c:120
 print_address_description mm/kasan/report.c:408 [inline]
 print_report+0xb4/0x290 mm/kasan/report.c:521
 kasan_report+0x118/0x150 mm/kasan/report.c:634
 xfs_inode_item_push+0x28f/0x2e0 fs/xfs/xfs_inode_item.c:797
 xfsaild_push_item fs/xfs/xfs_trans_ail.c:390 [inline]
 xfsaild_push fs/xfs/xfs_trans_ail.c:518 [inline]
 xfsaild+0xd92/0x2940 fs/xfs/xfs_trans_ail.c:700
 kthread+0x70e/0x8a0 kernel/kthread.c:464
 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:153
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
 </TASK>

Allocated by task 7462:
 kasan_save_stack mm/kasan/common.c:47 [inline]
 kasan_save_track+0x3e/0x80 mm/kasan/common.c:68
 unpoison_slab_object mm/kasan/common.c:319 [inline]
 __kasan_slab_alloc+0x6c/0x80 mm/kasan/common.c:345
 kasan_slab_alloc include/linux/kasan.h:250 [inline]
 slab_post_alloc_hook mm/slub.c:4147 [inline]
 slab_alloc_node mm/slub.c:4196 [inline]
 kmem_cache_alloc_noprof+0x1c1/0x3c0 mm/slub.c:4203
 xfs_inode_item_init+0x33/0xc0 fs/xfs/xfs_inode_item.c:892
 xfs_trans_ijoin+0xe5/0x130 fs/xfs/libxfs/xfs_trans_inode.c:36
 xfs_vn_update_time+0x377/0x570 fs/xfs/xfs_iops.c:1159
 inode_update_time fs/inode.c:2076 [inline]
 touch_atime+0x2f6/0x6d0 fs/inode.c:2149
 file_accessed include/linux/fs.h:2599 [inline]
 filemap_read+0x1024/0x11d0 mm/filemap.c:2774
 xfs_file_buffered_read+0x1a2/0x350 fs/xfs/xfs_file.c:292
 xfs_file_read_iter+0x280/0x510 fs/xfs/xfs_file.c:317
 __kernel_read+0x469/0x8c0 fs/read_write.c:528
 integrity_kernel_read+0x89/0xd0 security/integrity/iint.c:28
 ima_calc_file_hash_tfm security/integrity/ima/ima_crypto.c:480 [inline]
 ima_calc_file_shash security/integrity/ima/ima_crypto.c:511 [inline]
 ima_calc_file_hash+0x152c/0x18d0 security/integrity/ima/ima_crypto.c:568
 ima_collect_measurement+0x42e/0x8e0 security/integrity/ima/ima_api.c:293
 process_measurement+0x1121/0x1a40 security/integrity/ima/ima_main.c:385
 ima_file_check+0xd7/0x120 security/integrity/ima/ima_main.c:613
 security_file_post_open+0xbb/0x290 security/security.c:3130
 do_open fs/namei.c:3882 [inline]
 path_openat+0x2f26/0x3830 fs/namei.c:4039
 do_filp_open+0x1fa/0x410 fs/namei.c:4066
 do_sys_openat2+0x121/0x1c0 fs/open.c:1429
 do_sys_open fs/open.c:1444 [inline]
 __do_sys_open fs/open.c:1452 [inline]
 __se_sys_open fs/open.c:1448 [inline]
 __x64_sys_open+0x11e/0x150 fs/open.c:1448
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xf6/0x210 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Freed by task 5824:
 kasan_save_stack mm/kasan/common.c:47 [inline]
 kasan_save_track+0x3e/0x80 mm/kasan/common.c:68
 kasan_save_free_info+0x46/0x50 mm/kasan/generic.c:576
 poison_slab_object mm/kasan/common.c:247 [inline]
 __kasan_slab_free+0x62/0x70 mm/kasan/common.c:264
 kasan_slab_free include/linux/kasan.h:233 [inline]
 slab_free_hook mm/slub.c:2380 [inline]
 slab_free mm/slub.c:4642 [inline]
 kmem_cache_free+0x192/0x3f0 mm/slub.c:4744
 xfs_inode_free_callback+0x14f/0x1c0 fs/xfs/xfs_icache.c:161
 rcu_do_batch kernel/rcu/tree.c:2568 [inline]
 rcu_core+0xca8/0x1710 kernel/rcu/tree.c:2824
 handle_softirqs+0x286/0x870 kernel/softirq.c:579
 __do_softirq kernel/softirq.c:613 [inline]
 invoke_softirq kernel/softirq.c:453 [inline]
 __irq_exit_rcu+0xca/0x1f0 kernel/softirq.c:680
 irq_exit_rcu+0x9/0x30 kernel/softirq.c:696
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1049 [inline]
 sysvec_apic_timer_interrupt+0xa6/0xc0 arch/x86/kernel/apic/apic.c:1049
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702

The buggy address belongs to the object at ffff88805a838b88
 which belongs to the cache xfs_ili of size 264
The buggy address is located 48 bytes inside of
 freed 264-byte region [ffff88805a838b88, ffff88805a838c90)

The buggy address belongs to the physical page:
page: refcount:0 mapcount:0 mapping:0000000000000000 index:0xffff88805a838a40 pfn:0x5a838
flags: 0xfff00000000000(node=0|zone=1|lastcpupid=0x7ff)
page_type: f5(slab)
raw: 00fff00000000000 ffff888020281780 dead000000000122 0000000000000000
raw: ffff88805a838a40 00000000800c0006 00000000f5000000 0000000000000000
page dumped because: kasan: bad access detected
page_owner tracks the page as allocated
page last allocated via order 0, migratetype Reclaimable, gfp_mask 0x52c50(GFP_NOFS|__GFP_RECLAIMABLE|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP), pid 5835, tgid 5835 (syz-executor), ts 129436670564, free_ts 126509348706
 set_page_owner include/linux/page_owner.h:32 [inline]
 post_alloc_hook+0x1d8/0x230 mm/page_alloc.c:1718
 prep_new_page mm/page_alloc.c:1726 [inline]
 get_page_from_freelist+0x21c7/0x22a0 mm/page_alloc.c:3688
 __alloc_frozen_pages_noprof+0x181/0x370 mm/page_alloc.c:4970
 alloc_pages_mpol+0x232/0x4a0 mm/mempolicy.c:2301
 alloc_slab_page mm/slub.c:2450 [inline]
 allocate_slab+0x8a/0x3b0 mm/slub.c:2618
 new_slab mm/slub.c:2672 [inline]
 ___slab_alloc+0xbfc/0x1480 mm/slub.c:3858
 __slab_alloc mm/slub.c:3948 [inline]
 __slab_alloc_node mm/slub.c:4023 [inline]
 slab_alloc_node mm/slub.c:4184 [inline]
 kmem_cache_alloc_noprof+0x283/0x3c0 mm/slub.c:4203
 xfs_inode_item_init+0x33/0xc0 fs/xfs/xfs_inode_item.c:892
 xfs_trans_ijoin+0xe5/0x130 fs/xfs/libxfs/xfs_trans_inode.c:36
 xfs_trans_alloc_dir+0x178/0x620 fs/xfs/xfs_trans.c:1390
 xfs_remove+0x491/0x960 fs/xfs/xfs_inode.c:1934
 xfs_vn_unlink+0xfb/0x210 fs/xfs/xfs_iops.c:413
 vfs_unlink+0x394/0x650 fs/namei.c:4579
 do_unlinkat+0x350/0x560 fs/namei.c:4643
 __do_sys_unlink fs/namei.c:4689 [inline]
 __se_sys_unlink fs/namei.c:4687 [inline]
 __x64_sys_unlink+0x47/0x50 fs/namei.c:4687
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xf6/0x210 arch/x86/entry/syscall_64.c:94
page last free pid 5824 tgid 5824 stack trace:
 reset_page_owner include/linux/page_owner.h:25 [inline]
 free_pages_prepare mm/page_alloc.c:1262 [inline]
 __free_frozen_pages+0xb05/0xcd0 mm/page_alloc.c:2725
 discard_slab mm/slub.c:2716 [inline]
 __put_partials+0x161/0x1c0 mm/slub.c:3185
 put_cpu_partial+0x17c/0x250 mm/slub.c:3260
 __slab_free+0x2f7/0x400 mm/slub.c:4512
 qlink_free mm/kasan/quarantine.c:163 [inline]
 qlist_free_all+0x9a/0x140 mm/kasan/quarantine.c:179
 kasan_quarantine_reduce+0x148/0x160 mm/kasan/quarantine.c:286
 __kasan_slab_alloc+0x22/0x80 mm/kasan/common.c:329
 kasan_slab_alloc include/linux/kasan.h:250 [inline]
 slab_post_alloc_hook mm/slub.c:4147 [inline]
 slab_alloc_node mm/slub.c:4196 [inline]
 kmem_cache_alloc_noprof+0x1c1/0x3c0 mm/slub.c:4203
 getname_flags+0xb8/0x540 fs/namei.c:146
 getname include/linux/fs.h:2852 [inline]
 getname_maybe_null include/linux/fs.h:2859 [inline]
 vfs_fstatat+0x43/0x160 fs/stat.c:367
 __do_sys_newfstatat fs/stat.c:536 [inline]
 __se_sys_newfstatat fs/stat.c:530 [inline]
 __x64_sys_newfstatat+0x11c/0x1a0 fs/stat.c:530
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0xf6/0x210 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Memory state around the buggy address:
 ffff88805a838a80: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff88805a838b00: fb fb fb fb fb fb fb fb fb fc fc fc fc fc fc fc
>ffff88805a838b80: fc fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb
                                        ^
 ffff88805a838c00: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
 ffff88805a838c80: fb fb fc fc fc fc fc fc fc fc fa fb fb fb fb fb
==================================================================