loop0: detected capacity change from 0 to 32768 bcachefs (loop0): starting version 1.7: mi_btree_bitmap opts=errors=continue,metadata_checksum=none,data_checksum=none,checksum_err_retry_nr=12,compression=lz4,foreground_target=invalid label 767,background_target=invalid device 7,degraded=yes,nojournal_transaction_names allowing incompatible features above 0.0: (unknown version) features: lz4,new_siphash,inline_data,new_extent_overwrite,btree_ptr_v2,new_varint,journal_no_flush,alloc_v2,extents_across_btree_nodes bcachefs (loop0): Using encoding defined by superblock: utf8-12.1.0 bcachefs (loop0): initializing new filesystem bcachefs (loop0): going read-write bcachefs (loop0): marking superblocks bcachefs (loop0): initializing freespace bcachefs (loop0): done initializing freespace bcachefs (loop0): reading snapshots table bcachefs (loop0): reading snapshots done bcachefs (loop0): done starting filesystem ================================================================== BUG: KASAN: slab-out-of-bounds in bch2_dirent_init_name+0x396/0x8b0 fs/bcachefs/dirent.c:276 Write of size 1985 at addr ffff8880365fd233 by task syz.0.0/5358 CPU: 0 UID: 0 PID: 5358 Comm: syz.0.0 Not tainted syzkaller #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Call Trace: dump_stack_lvl+0x189/0x250 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 [inline] print_report+0xca/0x240 mm/kasan/report.c:482 kasan_report+0x118/0x150 mm/kasan/report.c:595 check_region_inline mm/kasan/generic.c:-1 [inline] kasan_check_range+0x2b0/0x2c0 mm/kasan/generic.c:189 __asan_memset+0x22/0x50 mm/kasan/shadow.c:84 bch2_dirent_init_name+0x396/0x8b0 fs/bcachefs/dirent.c:276 bch2_dirent_create_key+0x2a1/0x5f0 fs/bcachefs/dirent.c:319 bch2_dirent_create+0xc5/0xc80 fs/bcachefs/dirent.c:362 bch2_link_trans+0x39e/0x560 fs/bcachefs/namei.c:241 __bch2_link+0x231/0x3f0 fs/bcachefs/fs.c:776 bch2_link+0x197/0x220 fs/bcachefs/fs.c:805 vfs_link+0x4ed/0x6e0 fs/namei.c:4941 do_linkat+0x272/0x560 fs/namei.c:5011 __do_sys_link fs/namei.c:5045 [inline] __se_sys_link fs/namei.c:5043 [inline] __x64_sys_link+0x82/0x90 fs/namei.c:5043 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7ffa27f8eec9 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:00007ffa28eb5038 EFLAGS: 00000246 ORIG_RAX: 0000000000000056 RAX: ffffffffffffffda RBX: 00007ffa281e5fa0 RCX: 00007ffa27f8eec9 RDX: 0000000000000000 RSI: 0000200000000bc0 RDI: 0000200000001240 RBP: 00007ffa28011f91 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007ffa281e6038 R14: 00007ffa281e5fa0 R15: 00007fff25742158 Allocated by task 5358: kasan_save_stack mm/kasan/common.c:47 [inline] kasan_save_track+0x3e/0x80 mm/kasan/common.c:68 poison_kmalloc_redzone mm/kasan/common.c:388 [inline] __kasan_kmalloc+0x93/0xb0 mm/kasan/common.c:405 kasan_kmalloc include/linux/kasan.h:260 [inline] __do_kmalloc_node mm/slub.c:4376 [inline] __kmalloc_noprof+0x27a/0x4f0 mm/slub.c:4388 kmalloc_noprof include/linux/slab.h:909 [inline] __bch2_trans_kmalloc+0x396/0x9d0 fs/bcachefs/btree_iter.c:3242 bch2_trans_kmalloc_ip fs/bcachefs/btree_iter.h:604 [inline] bch2_trans_kmalloc fs/bcachefs/btree_iter.h:616 [inline] bch2_dirent_create_key+0x113/0x5f0 fs/bcachefs/dirent.c:302 bch2_dirent_create+0xc5/0xc80 fs/bcachefs/dirent.c:362 bch2_link_trans+0x39e/0x560 fs/bcachefs/namei.c:241 __bch2_link+0x231/0x3f0 fs/bcachefs/fs.c:776 bch2_link+0x197/0x220 fs/bcachefs/fs.c:805 vfs_link+0x4ed/0x6e0 fs/namei.c:4941 do_linkat+0x272/0x560 fs/namei.c:5011 __do_sys_link fs/namei.c:5045 [inline] __se_sys_link fs/namei.c:5043 [inline] __x64_sys_link+0x82/0x90 fs/namei.c:5043 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f The buggy address belongs to the object at ffff8880365fd000 which belongs to the cache kmalloc-2k of size 2048 The buggy address is located 563 bytes inside of allocated 2048-byte region [ffff8880365fd000, ffff8880365fd800) The buggy address belongs to the physical page: page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x365f8 head: order:3 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x4fff00000000040(head|node=1|zone=1|lastcpupid=0x7ff) page_type: f5(slab) raw: 04fff00000000040 ffff88801a842000 dead000000000122 0000000000000000 raw: 0000000000000000 0000000080080008 00000000f5000000 0000000000000000 head: 04fff00000000040 ffff88801a842000 dead000000000122 0000000000000000 head: 0000000000000000 0000000080080008 00000000f5000000 0000000000000000 head: 04fff00000000003 ffffea0000d97e01 00000000ffffffff 00000000ffffffff head: ffffffffffffffff 0000000000000000 00000000ffffffff 0000000000000008 page dumped because: kasan: bad access detected page_owner tracks the page as allocated page last allocated via order 3, migratetype Unmovable, gfp_mask 0xd20c0(__GFP_IO|__GFP_FS|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_NOMEMALLOC), pid 4707, tgid 4707 (kworker/u5:1), ts 68542255059, free_ts 68433281707 set_page_owner include/linux/page_owner.h:32 [inline] post_alloc_hook+0x240/0x2a0 mm/page_alloc.c:1851 prep_new_page mm/page_alloc.c:1859 [inline] get_page_from_freelist+0x21e4/0x22c0 mm/page_alloc.c:3858 __alloc_frozen_pages_noprof+0x181/0x370 mm/page_alloc.c:5148 alloc_pages_mpol+0x232/0x4a0 mm/mempolicy.c:2416 alloc_slab_page mm/slub.c:2492 [inline] allocate_slab+0x8a/0x370 mm/slub.c:2660 new_slab mm/slub.c:2714 [inline] ___slab_alloc+0xbeb/0x1420 mm/slub.c:3901 __slab_alloc mm/slub.c:3992 [inline] __slab_alloc_node mm/slub.c:4067 [inline] slab_alloc_node mm/slub.c:4228 [inline] __do_kmalloc_node mm/slub.c:4375 [inline] __kvmalloc_node_noprof+0x429/0x5f0 mm/slub.c:5067 __bch2_darray_resize_noprof+0xd7/0x290 fs/bcachefs/darray.c:24 bch2_accounting_key_to_wb_slowpath+0x289/0x2d0 fs/bcachefs/btree_write_buffer.c:718 bch2_accounting_key_to_wb fs/bcachefs/btree_write_buffer.h:61 [inline] bch2_journal_key_to_wb fs/bcachefs/btree_write_buffer.h:101 [inline] bch2_journal_write_prep fs/bcachefs/journal_io.c:1987 [inline] bch2_journal_write+0x10e7/0x5570 fs/bcachefs/journal_io.c:2162 process_one_work kernel/workqueue.c:3236 [inline] process_scheduled_works+0xade/0x17b0 kernel/workqueue.c:3319 worker_thread+0x8a0/0xda0 kernel/workqueue.c:3400 kthread+0x70e/0x8a0 kernel/kthread.c:463 ret_from_fork+0x439/0x7d0 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 page last free pid 5333 tgid 5333 stack trace: reset_page_owner include/linux/page_owner.h:25 [inline] free_pages_prepare mm/page_alloc.c:1395 [inline] __free_frozen_pages+0xbc4/0xd30 mm/page_alloc.c:2895 discard_slab mm/slub.c:2758 [inline] __put_partials+0x156/0x1a0 mm/slub.c:3223 put_cpu_partial+0x17c/0x250 mm/slub.c:3298 __slab_free+0x2d5/0x3c0 mm/slub.c:4565 qlink_free mm/kasan/quarantine.c:163 [inline] qlist_free_all+0x97/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:340 kasan_slab_alloc include/linux/kasan.h:250 [inline] slab_post_alloc_hook mm/slub.c:4191 [inline] slab_alloc_node mm/slub.c:4240 [inline] kmem_cache_alloc_noprof+0x1c1/0x3c0 mm/slub.c:4247 getname_flags+0xb8/0x540 fs/namei.c:146 getname include/linux/fs.h:2912 [inline] getname_maybe_null include/linux/fs.h:2919 [inline] vfs_fstatat+0x43/0x170 fs/stat.c:370 __do_sys_newfstatat fs/stat.c:542 [inline] __se_sys_newfstatat fs/stat.c:536 [inline] __x64_sys_newfstatat+0x116/0x190 fs/stat.c:536 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f Memory state around the buggy address: ffff8880365fd700: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ffff8880365fd780: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >ffff8880365fd800: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ^ ffff8880365fd880: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ffff8880365fd900: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc ==================================================================