bcachefs (loop2): marking superblocks bcachefs (loop2): initializing freespace bcachefs (loop2): done initializing freespace bcachefs (loop2): reading snapshots table bcachefs (loop2): reading snapshots done bcachefs (loop2): done starting filesystem ================================================================== BUG: KASAN: slab-use-after-free in bchfs_read+0x256a/0x2da0 fs/bcachefs/fs-io-buffered.c:228 Read of size 4 at addr ffff888103b5e148 by task syz.2.17/3369 CPU: 0 UID: 0 PID: 3369 Comm: syz.2.17 Not tainted 6.14.0-rc6-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x108/0x280 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 bchfs_read+0x256a/0x2da0 fs/bcachefs/fs-io-buffered.c:228 bch2_readahead+0xc87/0x1020 fs/bcachefs/fs-io-buffered.c:301 read_pages+0x135/0x3f0 mm/readahead.c:161 page_cache_ra_order+0x315/0x970 mm/readahead.c:516 filemap_get_pages+0x51e/0x1920 mm/filemap.c:2580 filemap_read+0x3c4/0xd30 mm/filemap.c:2691 bch2_read_iter+0x454/0x1280 fs/bcachefs/fs-io-direct.c:221 new_sync_read fs/read_write.c:484 [inline] vfs_read+0x874/0xbd0 fs/read_write.c:565 ksys_read+0x149/0x230 fs/read_write.c:708 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x8d/0x190 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f4563f8d169 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f4564e1a038 EFLAGS: 00000246 ORIG_RAX: 0000000000000000 RAX: ffffffffffffffda RBX: 00007f45641a5fa0 RCX: 00007f4563f8d169 RDX: 0000000000002020 RSI: 0000200000000800 RDI: 0000000000000004 RBP: 00007f4564e1a090 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 R13: 0000000000000000 R14: 00007f45641a5fa0 R15: 00007ffe765f37e8 Allocated by task 3369: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x3f/0x80 mm/kasan/common.c:68 unpoison_slab_object mm/kasan/common.c:319 [inline] __kasan_mempool_unpoison_object+0x9e/0x170 mm/kasan/common.c:547 kasan_unpoison_element mm/mempool.c:-1 [inline] remove_element+0x12f/0x160 mm/mempool.c:150 mempool_alloc_noprof+0x456/0x490 mm/mempool.c:408 bio_alloc_bioset+0x62e/0x11a0 block/bio.c:554 bch2_readahead+0xa06/0x1020 fs/bcachefs/fs-io-buffered.c:290 read_pages+0x135/0x3f0 mm/readahead.c:161 page_cache_ra_order+0x315/0x970 mm/readahead.c:516 filemap_get_pages+0x51e/0x1920 mm/filemap.c:2580 filemap_read+0x3c4/0xd30 mm/filemap.c:2691 bch2_read_iter+0x454/0x1280 fs/bcachefs/fs-io-direct.c:221 new_sync_read fs/read_write.c:484 [inline] vfs_read+0x874/0xbd0 fs/read_write.c:565 ksys_read+0x149/0x230 fs/read_write.c:708 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x8d/0x190 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f Freed by task 3369: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x3f/0x80 mm/kasan/common.c:68 kasan_save_free_info+0x40/0x50 mm/kasan/generic.c:576 poison_slab_object mm/kasan/common.c:247 [inline] __kasan_mempool_poison_object+0xaa/0x120 mm/kasan/common.c:522 kasan_mempool_poison_object include/linux/kasan.h:360 [inline] kasan_poison_element mm/mempool.c:118 [inline] add_element mm/mempool.c:141 [inline] mempool_free+0x1a6/0x340 mm/mempool.c:541 bch2_readpages_end_io+0x138/0x190 fs/bcachefs/fs-io-buffered.c:36 bch2_rbio_done fs/bcachefs/io_read.c:429 [inline] __bch2_read_extent+0xf0a/0x3d10 fs/bcachefs/io_read.c:1256 bch2_read_extent fs/bcachefs/io_read.h:140 [inline] bchfs_read+0x1ebe/0x2da0 fs/bcachefs/fs-io-buffered.c:226 bch2_readahead+0xc87/0x1020 fs/bcachefs/fs-io-buffered.c:301 read_pages+0x135/0x3f0 mm/readahead.c:161 page_cache_ra_order+0x315/0x970 mm/readahead.c:516 filemap_get_pages+0x51e/0x1920 mm/filemap.c:2580 filemap_read+0x3c4/0xd30 mm/filemap.c:2691 bch2_read_iter+0x454/0x1280 fs/bcachefs/fs-io-direct.c:221 new_sync_read fs/read_write.c:484 [inline] vfs_read+0x874/0xbd0 fs/read_write.c:565 ksys_read+0x149/0x230 fs/read_write.c:708 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x8d/0x190 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f The buggy address belongs to the object at ffff888103b5e000 which belongs to the cache bio-488 of size 488 The buggy address is located 328 bytes inside of freed 488-byte region [ffff888103b5e000, ffff888103b5e1e8) The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x103b5e head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x100000000000040(head|node=0|zone=2) page_type: f5(slab) raw: 0100000000000040 ffff88817b65b780 dead000000000122 0000000000000000 raw: 0000000000000000 00000000800c000c 00000000f5000000 0000000000000000 head: 0100000000000040 ffff88817b65b780 dead000000000122 0000000000000000 head: 0000000000000000 00000000800c000c 00000000f5000000 0000000000000000 head: 0100000000000001 ffffea00040ed781 ffffffffffffffff 0000000000000000 head: 0000000000000002 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 1, migratetype Unmovable, gfp_mask 0xd20c0(__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC), pid 3369, tgid 3368 (syz.2.17), ts 69905412076, free_ts 69002157583 set_page_owner include/linux/page_owner.h:32 [inline] post_alloc_hook+0x108/0x120 mm/page_alloc.c:1551 prep_new_page mm/page_alloc.c:1559 [inline] get_page_from_freelist+0x4725/0x4900 mm/page_alloc.c:3477 __alloc_frozen_pages_noprof+0x256/0x650 mm/page_alloc.c:4740 alloc_pages_mpol+0x224/0x4e0 mm/mempolicy.c:2270 alloc_slab_page mm/slub.c:2423 [inline] allocate_slab+0x8b/0x350 mm/slub.c:2587 new_slab mm/slub.c:2640 [inline] ___slab_alloc+0xa19/0x1160 mm/slub.c:3826 __slab_alloc mm/slub.c:3916 [inline] __slab_alloc_node mm/slub.c:3991 [inline] slab_alloc_node mm/slub.c:4152 [inline] kmem_cache_alloc_noprof+0x279/0x410 mm/slub.c:4171 mempool_init_node+0x1d5/0x460 mm/mempool.c:217 mempool_init_noprof+0x11/0x20 mm/mempool.c:246 bioset_init+0x2fb/0x7c0 block/bio.c:1707 bch2_fs_io_read_init+0x23/0x90 fs/bcachefs/io_read.c:1376 bch2_fs_alloc+0x1774/0x1d90 fs/bcachefs/super.c:942 bch2_fs_open+0x62d/0xc30 fs/bcachefs/super.c:2182 bch2_fs_get_tree+0x6ed/0x1600 fs/bcachefs/fs.c:2172 vfs_get_tree+0x86/0x1a0 fs/super.c:1814 do_new_mount+0x21e/0x9b0 fs/namespace.c:3560 page last free pid 1422 tgid 1422 stack trace: reset_page_owner include/linux/page_owner.h:25 [inline] free_pages_prepare mm/page_alloc.c:1127 [inline] free_frozen_pages+0xc14/0xe90 mm/page_alloc.c:2660 discard_slab mm/slub.c:2684 [inline] __put_partials+0x156/0x1b0 mm/slub.c:3153 put_cpu_partial+0x155/0x1b0 mm/slub.c:3228 __slab_free+0x265/0x360 mm/slub.c:4479 qlink_free mm/kasan/quarantine.c:163 [inline] qlist_free_all+0x9a/0x140 mm/kasan/quarantine.c:179 kasan_quarantine_reduce+0x14f/0x170 mm/kasan/quarantine.c:286 __kasan_slab_alloc+0x23/0x80 mm/kasan/common.c:329 kasan_slab_alloc include/linux/kasan.h:250 [inline] slab_post_alloc_hook mm/slub.c:4115 [inline] slab_alloc_node mm/slub.c:4164 [inline] kmem_cache_alloc_noprof+0x1b9/0x410 mm/slub.c:4171 getname_flags+0x9d/0x440 fs/namei.c:139 do_sys_openat2+0xb0/0x180 fs/open.c:1422 do_sys_open fs/open.c:1443 [inline] __do_sys_openat fs/open.c:1459 [inline] __se_sys_openat fs/open.c:1454 [inline] __x64_sys_openat+0x20d/0x260 fs/open.c:1454 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0x8d/0x190 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f Memory state around the buggy address: ffff888103b5e000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ffff888103b5e080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb >ffff888103b5e100: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb ^ ffff888103b5e180: fb fb fb fb fb fb fb fb fb fb fb fb fb fc fc fc ffff888103b5e200: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ==================================================================