u64s 11 type btree_ptr_v2 SPOS_MAX len 0 ver 0: seq c6c25c03258c59c5 written 48 min_key 0:36028797018963968:0 durability: 1 ptr: 0:27:0 gen 0 node offset 8/48 bset u64s 2088 bset byte offset 360: bad k->u64s 0 (min 3 max 253), fixing ================================================================== BUG: KASAN: slab-use-after-free in bkey_packed_valid+0x488/0x6c0 fs/bcachefs/btree_io.c:865 Read of size 1 at addr ffff888073580000 by task kworker/0:0H/10 CPU: 0 UID: 0 PID: 10 Comm: kworker/0:0H Not tainted 6.14.0-rc5-syzkaller-00023-gbb2281fb05e5 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Workqueue: bcachefs_btree_read_complete btree_node_read_work Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:408 [inline] print_report+0x16e/0x5b0 mm/kasan/report.c:521 kasan_report+0x143/0x180 mm/kasan/report.c:634 bkey_packed_valid+0x488/0x6c0 fs/bcachefs/btree_io.c:865 validate_bset_keys+0xeb5/0x1af0 fs/bcachefs/btree_io.c:987 bch2_btree_node_read_done+0x2298/0x6180 fs/bcachefs/btree_io.c:1164 btree_node_read_work+0x6dc/0x1380 fs/bcachefs/btree_io.c:1358 process_one_work kernel/workqueue.c:3238 [inline] process_scheduled_works+0xabe/0x18e0 kernel/workqueue.c:3319 worker_thread+0x870/0xd30 kernel/workqueue.c:3400 kthread+0x7a9/0x920 kernel/kthread.c:464 ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 The buggy address belongs to the object at ffff888073580000 which belongs to the cache radix_tree_node of size 576 The buggy address is located 0 bytes inside of freed 576-byte region [ffff888073580000, ffff888073580240) The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x73580 head: order:2 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 memcg:ffff888022aec801 flags: 0xfff00000000040(head|node=0|zone=1|lastcpupid=0x7ff) page_type: f5(slab) raw: 00fff00000000040 ffff88801b04fdc0 dead000000000122 0000000000000000 raw: 0000000000000000 0000000000170017 00000000f5000000 ffff888022aec801 head: 00fff00000000040 ffff88801b04fdc0 dead000000000122 0000000000000000 head: 0000000000000000 0000000000170017 00000000f5000000 ffff888022aec801 head: 00fff00000000002 ffffea0001cd6001 ffffffffffffffff 0000000000000000 head: 0000000000000004 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 2, migratetype Reclaimable, gfp_mask 0x52810(GFP_NOWAIT|__GFP_NORETRY|__GFP_COMP|__GFP_RECLAIMABLE), pid 6111, tgid 6110 (syz-executor150), ts 72705687681, free_ts 72155488994 set_page_owner include/linux/page_owner.h:32 [inline] post_alloc_hook+0x1f4/0x240 mm/page_alloc.c:1551 prep_new_page mm/page_alloc.c:1559 [inline] get_page_from_freelist+0x3651/0x37a0 mm/page_alloc.c:3477 __alloc_frozen_pages_noprof+0x292/0x710 mm/page_alloc.c:4739 alloc_pages_mpol+0x311/0x660 mm/mempolicy.c:2270 alloc_slab_page mm/slub.c:2423 [inline] allocate_slab+0x8f/0x3a0 mm/slub.c:2587 new_slab mm/slub.c:2640 [inline] ___slab_alloc+0xc27/0x14a0 mm/slub.c:3826 __slab_alloc+0x58/0xa0 mm/slub.c:3916 __slab_alloc_node mm/slub.c:3991 [inline] slab_alloc_node mm/slub.c:4152 [inline] kmem_cache_alloc_lru_noprof+0x26c/0x390 mm/slub.c:4183 xas_alloc lib/xarray.c:377 [inline] xas_create+0x10d0/0x1ae0 lib/xarray.c:684 xas_store+0x96/0x1870 lib/xarray.c:794 shmem_add_to_page_cache+0x89d/0xcc0 mm/shmem.c:897 shmem_alloc_and_add_folio+0x968/0x1090 mm/shmem.c:1928 shmem_get_folio_gfp+0x621/0x1840 mm/shmem.c:2522 shmem_get_folio mm/shmem.c:2628 [inline] shmem_write_begin+0x165/0x350 mm/shmem.c:3278 generic_perform_write+0x346/0x990 mm/filemap.c:4189 shmem_file_write_iter+0xf9/0x120 mm/shmem.c:3454 page last free pid 6083 tgid 6082 stack trace: reset_page_owner include/linux/page_owner.h:25 [inline] free_pages_prepare mm/page_alloc.c:1127 [inline] free_frozen_pages+0xe04/0x10e0 mm/page_alloc.c:2660 __folio_put+0x2b3/0x360 mm/swap.c:112 folio_put include/linux/mm.h:1489 [inline] free_large_kmalloc+0xfe/0x180 mm/slub.c:4728 kfree+0x212/0x430 mm/slub.c:4751 __btree_node_data_free+0x30e/0x550 fs/bcachefs/btree_cache.c:113 btree_node_data_free fs/bcachefs/btree_cache.c:130 [inline] bch2_fs_btree_cache_exit+0xb20/0x1520 fs/bcachefs/btree_cache.c:612 __bch2_fs_free fs/bcachefs/super.c:570 [inline] bch2_fs_release+0x20e/0x7b0 fs/bcachefs/super.c:624 kobject_cleanup lib/kobject.c:689 [inline] kobject_release lib/kobject.c:720 [inline] kref_put include/linux/kref.h:65 [inline] kobject_put+0x22f/0x480 lib/kobject.c:737 bch2_fs_alloc fs/bcachefs/super.c:963 [inline] bch2_fs_open+0x1e1d/0x31e0 fs/bcachefs/super.c:2064 bch2_fs_get_tree+0x738/0x17a0 fs/bcachefs/fs.c:2190 vfs_get_tree+0x90/0x2b0 fs/super.c:1814 do_new_mount+0x2be/0xb40 fs/namespace.c:3560 do_mount fs/namespace.c:3900 [inline] __do_sys_mount fs/namespace.c:4111 [inline] __se_sys_mount+0x2d6/0x3c0 fs/namespace.c:4088 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f Memory state around the buggy address: ffff88807357ff00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff88807357ff80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >ffff888073580000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff888073580080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff888073580100: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ==================================================================