Forwarded: Re: [syzbot] [ext4?] KASAN: slab-use-after-free Read in ext4_ext_remove_space

From: syzbot

Date: Fri Mar 06 2026 - 13:39:07 EST


For archival purposes, forwarding an incoming command email to
linux-kernel@xxxxxxxxxxxxxxx, syzkaller-bugs@xxxxxxxxxxxxxxxx.

***

Subject: Re: [syzbot] [ext4?] KASAN: slab-use-after-free Read in ext4_ext_remove_space
Author: koike@xxxxxxxxxx

#syz test

On 6/25/25 11:41 AM, syzbot wrote:
> syzbot has found a reproducer for the following issue on:
>
> HEAD commit: 9aa9b43d689e Merge branch 'for-next/core' into for-kernelci
> git tree: git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci
> console output: https://syzkaller.appspot.com/x/log.txt?x=1052df0c580000
> kernel config: https://syzkaller.appspot.com/x/.config?x=27f179c74d5c35cd
> dashboard link: https://syzkaller.appspot.com/bug?extid=b73703b873a33d8eb8f6
> compiler: Debian clang version 20.1.6 (++20250514063057+1e4d39e07757-1~exp1~20250514183223.118), Debian LLD 20.1.6
> userspace arch: arm64
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=10809b70580000
> C reproducer: https://syzkaller.appspot.com/x/repro.c?x=106cbdd4580000
>
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/974f3ac1c6a5/disk-9aa9b43d.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/a5b5075d317f/vmlinux-9aa9b43d.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/2f0ba7fec19b/Image-9aa9b43d.gz.xz
> mounted in repro: https://storage.googleapis.com/syzbot-assets/e99c31ce9609/mount_0.gz
> fsck result: failed (log: https://syzkaller.appspot.com/x/fsck.log?x=13c1d182580000)
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+b73703b873a33d8eb8f6@xxxxxxxxxxxxxxxxxxxxxxxxx
>
> ==================================================================
> BUG: KASAN: use-after-free in ext4_ext_rm_leaf fs/ext4/extents.c:2627 [inline]
> BUG: KASAN: use-after-free in ext4_ext_remove_space+0x276c/0x37c8 fs/ext4/extents.c:2965
> Read of size 4 at addr ffff0000df6bdc18 by task syz-executor309/6516
>
> CPU: 1 UID: 0 PID: 6516 Comm: syz-executor309 Not tainted 6.16.0-rc2-syzkaller-g9aa9b43d689e #0 PREEMPT
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
> Call trace:
> show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:501 (C)
> __dump_stack+0x30/0x40 lib/dump_stack.c:94
> dump_stack_lvl+0xd8/0x12c lib/dump_stack.c:120
> print_address_description+0xa8/0x254 mm/kasan/report.c:408
> print_report+0x68/0x84 mm/kasan/report.c:521
> kasan_report+0xb0/0x110 mm/kasan/report.c:634
> __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380
> ext4_ext_rm_leaf fs/ext4/extents.c:2627 [inline]
> ext4_ext_remove_space+0x276c/0x37c8 fs/ext4/extents.c:2965
> ext4_ext_truncate+0x134/0x1d0 fs/ext4/extents.c:4484
> ext4_truncate+0x9c4/0xfe0 fs/ext4/inode.c:4574
> ext4_evict_inode+0x9b4/0x104c fs/ext4/inode.c:261
> evict+0x414/0x928 fs/inode.c:810
> iput_final fs/inode.c:1898 [inline]
> iput+0x6e4/0x83c fs/inode.c:1924
> do_unlinkat+0x338/0x4dc fs/namei.c:4657
> __do_sys_unlinkat fs/namei.c:4691 [inline]
> __se_sys_unlinkat fs/namei.c:4684 [inline]
> __arm64_sys_unlinkat+0xdc/0xf8 fs/namei.c:4684
> __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
> invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49
> el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132
> do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151
> el0_svc+0x58/0x17c arch/arm64/kernel/entry-common.c:767
> el0t_64_sync_handler+0x78/0x108 arch/arm64/kernel/entry-common.c:786
> el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
>
> The buggy address belongs to the physical page:
> page: refcount:0 mapcount:0 mapping:0000000000000000 index:0xea pfn:0x11f6bd
> flags: 0x5ffc00000000000(node=0|zone=2|lastcpupid=0x7ff)
> raw: 05ffc00000000000 fffffdffc37daf88 fffffdffc37daf08 0000000000000000
> raw: 00000000000000ea 0000000000000000 00000000ffffffff 0000000000000000
> page dumped because: kasan: bad access detected
>
> Memory state around the buggy address:
> ffff0000df6bdb00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> ffff0000df6bdb80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
>> ffff0000df6bdc00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> ^
> ffff0000df6bdc80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> ffff0000df6bdd00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
> ==================================================================
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 2244176752, count = 0
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 147072565182463, count = 27456
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 32928, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 175, count = 32767
> EXT4-fs error (device loop0): mb_free_blocks:1948: group 0, inode 18: block 145:freeing already freed block (bit 9); block bitmap corrupt.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 174
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 2244176584, count = 0
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 4
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 3036617056, count = 0
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 4294967295, count = 0
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 4294967280, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 199007309732176, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 199007309725695, count = 6492
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 111477107367824, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 111477107342893, count = 24934
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 111477107342880, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121450642510224, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121450642499955, count = 10272
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121450642499952, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 35650244284304, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 35650244255805, count = 28515
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 35528778226320, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 35528778203731, count = 22601
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 35528778203728, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 44118729738928, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 44118729709645, count = 29285
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 44118729709632, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 35654476944544, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 35654476918595, count = 25956
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 109270199922864, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 109270199919971, count = 2898
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 109270199919968, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121380089654400, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121380089626904, count = 27503
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121380089626896, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 13238790227568, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 13238790218593, count = 8978
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 133540988372176, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 133540988347760, count = 24421
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 133540988347760, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121424907179424, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121424907149882, count = 29546
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121424907149872, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 48814256808672, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 48814256779888, count = 28793
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 23390391899024, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 23390391898899, count = 131
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 23390391898896, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 2
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 52983525039200, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 52983525026871, count = 12332
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 52966278390864, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 52966278377520, count = 13360
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 52966278377520, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 55182548283436, count = 12336
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 52983524777056, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 52983524765744, count = 11322
> ------------[ cut here ]------------
> WARNING: CPU: 1 PID: 6516 at fs/ext4/mballoc.c:1908 mb_free_blocks+0xe7c/0x1260 fs/ext4/mballoc.c:1908
> Modules linked in:
> CPU: 1 UID: 0 PID: 6516 Comm: syz-executor309 Tainted: G B 6.16.0-rc2-syzkaller-g9aa9b43d689e #0 PREEMPT
> Tainted: [B]=BAD_PAGE
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
> pstate: 80400005 (Nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
> pc : mb_free_blocks+0xe7c/0x1260 fs/ext4/mballoc.c:1908
> lr : mb_free_blocks+0xe7c/0x1260 fs/ext4/mballoc.c:1908
> sp : ffff8000a40e72a0
> x29: ffff8000a40e7320 x28: 0000000000000007 x27: 0000000000000000
> x26: ffff0000e3b7b268 x25: ffff0000e3b7b268 x24: dfff800000000000
> x23: ffff8000a40e7428 x22: dfff800000000000 x21: ffff0000dcfa26a4
> x20: 0000000000000000 x19: ffff0000dcfa0000 x18: 1fffe000337e1476
> x17: ffff80008f62e000 x16: ffff80008aecb65c x15: 0000000000000001
> x14: 1fffe0001b9f44d4 x13: 0000000000000000 x12: 0000000000000000
> x11: ffff60001b9f44d5 x10: 0000000000ff0100 x9 : 0000000000000000
> x8 : ffff0000c8175b80 x7 : ffff8000a40e7424 x6 : ffff8000810f91a0
> x5 : 0000000000000000 x4 : 0000000000000001 x3 : 0000000000000000
> x2 : 0000000000000007 x1 : 0000000000000000 x0 : 0000000000000000
> Call trace:
> mb_free_blocks+0xe7c/0x1260 fs/ext4/mballoc.c:1908 (P)
> ext4_mb_clear_bb fs/ext4/mballoc.c:6519 [inline]
> ext4_free_blocks+0xf6c/0x18e4 fs/ext4/mballoc.c:6651
> ext4_remove_blocks fs/ext4/extents.c:2551 [inline]
> ext4_ext_rm_leaf fs/ext4/extents.c:2716 [inline]
> ext4_ext_remove_space+0x1610/0x37c8 fs/ext4/extents.c:2965
> ext4_ext_truncate+0x134/0x1d0 fs/ext4/extents.c:4484
> ext4_truncate+0x9c4/0xfe0 fs/ext4/inode.c:4574
> ext4_evict_inode+0x9b4/0x104c fs/ext4/inode.c:261
> evict+0x414/0x928 fs/inode.c:810
> iput_final fs/inode.c:1898 [inline]
> iput+0x6e4/0x83c fs/inode.c:1924
> do_unlinkat+0x338/0x4dc fs/namei.c:4657
> __do_sys_unlinkat fs/namei.c:4691 [inline]
> __se_sys_unlinkat fs/namei.c:4684 [inline]
> __arm64_sys_unlinkat+0xdc/0xf8 fs/namei.c:4684
> __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
> invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49
> el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132
> do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151
> el0_svc+0x58/0x17c arch/arm64/kernel/entry-common.c:767
> el0t_64_sync_handler+0x78/0x108 arch/arm64/kernel/entry-common.c:786
> el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
> irq event stamp: 23287
> hardirqs last enabled at (23287): [<ffff80008aec8cb0>] __exit_to_kernel_mode arch/arm64/kernel/entry-common.c:85 [inline]
> hardirqs last enabled at (23287): [<ffff80008aec8cb0>] exit_to_kernel_mode+0xc0/0xf0 arch/arm64/kernel/entry-common.c:95
> hardirqs last disabled at (23286): [<ffff80008aec689c>] __el1_irq arch/arm64/kernel/entry-common.c:580 [inline]
> hardirqs last disabled at (23286): [<ffff80008aec689c>] el1_interrupt+0x24/0x54 arch/arm64/kernel/entry-common.c:598
> softirqs last enabled at (21110): [<ffff8000801fcf10>] local_bh_enable+0x10/0x34 include/linux/bottom_half.h:32
> softirqs last disabled at (21108): [<ffff8000801fcedc>] local_bh_disable+0x10/0x34 include/linux/bottom_half.h:19
> ---[ end trace 0000000000000000 ]---
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 53955348821872, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 53955348795914, count = 25973
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 53955348795904, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 11349257057649, count = 808
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 11349257057648, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 130152096189904, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 130152096164961, count = 24948
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 130152096164960, count = 16
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 274057454951360, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 274057454948322, count = 3041
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 187048375239104, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 187048375238123, count = 995
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 187048375238112, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 273782572856256, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 273782572850149, count = 6116
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 273782572850144, count = 16
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121399102505152, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 121399102502003, count = 3154
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 107125092697296, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 107125092672877, count = 24421
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 107125092672864, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 11147376753520, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 11147376748813, count = 4709
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 11147376748800, count = 16
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 32768, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 6, count = 32767
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 20
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 2240614592, count = 0
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 2240614592, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 146840636948479, count = 8928
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 32768, count = 16
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 162744944121408, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 162744944116483, count = 4930
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 162744944116480, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 494727485440, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 494727479552, count = 5892
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 494727479552, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 4294255808, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 4294229272, count = 26540
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 30355232, count = 0
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 139685640869072, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 139685640864015, count = 5060
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281470681743360, count = 32768
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281474976743408, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281474976710655, count = 32767
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 244838905695904, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 244838905675775, count = 20141
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 305399552, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 305388640, count = 10923
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 20010252675755, count = 22496
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 10912, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 10913
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 64
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 33424, count = 16
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 30317912, count = 0
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 188910748055552, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 188910748043273, count = 12291
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 8, count = 0
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 51539611440, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 51539607551, count = 3904
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 51539607536, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 0, count = 16
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 70429001517213, count = 16640
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 17179152208, count = 23584
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 71468255809232, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 71468255805451, count = 3796
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 71468255805440, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 241750150690528, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 241750150666716, count = 23818
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 241750150666704, count = 16
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 7308266, count = 0
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 7308256, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 523986010112, count = 6112
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281470681743360, count = 32768
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281474976743408, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281474976710655, count = 32767
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 244838905695904, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 244838905675775, count = 20141
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 105524727857488, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 105524727841024, count = 16475
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 105524727841024, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 217230362534192, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 217230362532889, count = 1315
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 247360067207408, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 247360067207229, count = 191
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 247360067207216, count = 16
> EXT4-fs (loop0): unmounting filesystem 00000000-0000-0000-0000-000000000000.
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281473147498488, count = 32768
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281474976743408, count = 16
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281474976710655, count = 32767
> EXT4-fs error (device loop0): ext4_free_blocks:6587: comm syz-executor309: Freeing blocks not in datazone - block = 281470681743375, count = 0
>
>
> ---
> If you want syzbot to run the reproducer, reply with:
> #syz test: git://repo/address.git branch-or-commit-hash
> If you attach or paste a git patch, syzbot will apply it before testing.
>
> From mboxrd@z Thu Jan 1 00:00:00 1970
> Received: from mail-il1-f205.google.com (mail-il1-f205.google.com [209.85.166.205])
> (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
> (No client certificate requested)
> by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7EB30191F94
> for <linux-kernel@xxxxxxxxxxxxxxx>; Mon, 31 Mar 2025 11:15:22 +0000 (UTC)
> Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.205
> ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;
> t=1743419724; cv=none; b=RuVCt7hGhKwcpT7QkSRcHmrrwVmIquib+YAJ/LJOsJu/Gg+JlMppsC3E9zc5A7sP/2Y5A8avQxIoRhjfNgIX+2Fg6veW0C59oAELGCGwyPFRG+9A7p6cilK92qENiPlu8MODHguG4QanpKHsSiPc7VuLJ875aTnhxn4YQcVDO9E=
> ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org;
> s=arc-20240116; t=1743419724; c=relaxed/simple;
> bh=mZWlbNnWSXCza4ARHEaNz4tyDU3YEsnEcVojbHiTYHo=;
> h=MIME-Version:Date:Message-ID:Subject:From:To:Content-Type; b=HtN03Kq4rnUNS/r4xErZkYw91+0S+Hl/mSSukWz4c9bmVUh36rzHBVNKCx85FJfE1t+WtAjkrSfdZ6km7no+S6Ct+8IQHkfMGhd4MNc8/q4j4qfEq2fEzMBZ4zZDm2J8UxfS3F/vP+9rlEMwvbRTLzGtpI8LOW1r1wuiHqnMUi8=
> ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=fail (p=none dis=none) header.from=syzkaller.appspotmail.com; spf=pass smtp.mailfrom=M3KW2WVRGUFZ5GODRSRYTGD7.apphosting.bounces.google.com; arc=none smtp.client-ip=209.85.166.205
> Authentication-Results: smtp.subspace.kernel.org; dmarc=fail (p=none dis=none) header.from=syzkaller.appspotmail.com
> Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=M3KW2WVRGUFZ5GODRSRYTGD7.apphosting.bounces.google.com
> Received: by mail-il1-f205.google.com with SMTP id e9e14a558f8ab-3d43d333855so42629405ab.0
> for <linux-kernel@xxxxxxxxxxxxxxx>; Mon, 31 Mar 2025 04:15:22 -0700 (PDT)
> X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
> d=1e100.net; s=20230601; t=1743419721; x=1744024521;
> h=to:from:subject:message-id:date:mime-version:x-gm-message-state
> :from:to:cc:subject:date:message-id:reply-to;
> bh=RYJ2ayjHqCxYX5lTQl1r1YoFG3Bo+m2S/zYyovakDc4=;
> b=QZyzCTQwLgsdrTfpeW8Niitr/LDUI4oRhRDxVAAdiispRVFTr0dKnLlV5KZ1Xe7IGw
> uGxm0l7Uf+FjincAbbJ2X8S7hR7fSdtfsXiI4TdzqrpH+evziyAwlUcKuyNJZabr/z2f
> 8olTrnoKRNa7OcOxNi4MWQ34xPLpvdv8HdAzeNd86f1GmGUNRAK+M26xJq/H5TH+nob6
> 9nXr9dHp964SDD9aGnjSeW9HKkyXlawBdFJcY0IoRqeok1J283Vxaw9+uhGIUB2XgDqD
> W+QOcfHNxvEqaufhHfOlbWgD4S6IoGhFJV09ZLRelHpqU2swlWh/bAuD+jRwQZMEs2HQ
> FQ7A==
> X-Forwarded-Encrypted: i=1; AJvYcCUHUHal/iZj+Lam2Jf9jWgONyP4GsP3iISrXjZP4aI2ruNh+g1eFb9cY/Ic+xNYQdgfBoI57y95Wjk/A3M=@vger.kernel.org
> X-Gm-Message-State: AOJu0YwyZ8i7XoylXPNZdQ4M2AlWaKSix0Ob3evXgA95I8aAKbwqMI1e
> VqgNANvQUCvE6swiBzi12F60FYjEA/bYt+oulCpK7PBGr1kC9/OAuV97wjgnbkpmUDFGaxh83Zt
> NRDjWpuoUmf+A/6SiSnQf7cpWF++icxSf7eZKXfm7DGcs7iDqCnSN5YM=
> X-Google-Smtp-Source: AGHT+IF4JVf1xAqVts+d4FiZy72adDDnUCZqxzUQ6FifEtl22wwJY6HB61PhdQ5EX5ZOg0/Tb/ym22blM7CEexluSXdhUom7skAq
> Precedence: bulk
> X-Mailing-List: linux-kernel@xxxxxxxxxxxxxxx
> List-Id: <linux-kernel.vger.kernel.org>
> List-Subscribe: <mailto:linux-kernel+subscribe@xxxxxxxxxxxxxxx>
> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@xxxxxxxxxxxxxxx>
> MIME-Version: 1.0
> X-Received: by 2002:a05:6e02:3d81:b0:3ce:4b12:fa17 with SMTP id
> e9e14a558f8ab-3d5e0a0cfe7mr87228225ab.19.1743419721601; Mon, 31 Mar 2025
> 04:15:21 -0700 (PDT)
> Date: Mon, 31 Mar 2025 04:15:21 -0700
> X-Google-Appengine-App-Id: s~syzkaller
> X-Google-Appengine-App-Id-Alias: syzkaller
> Message-ID: <67ea7949.050a0220.1547ec.0137.GAE@xxxxxxxxxx>
> Subject: [syzbot] [ext4?] KASAN: slab-use-after-free Read in ext4_ext_remove_space
> From: syzbot <syzbot+b73703b873a33d8eb8f6@xxxxxxxxxxxxxxxxxxxxxxxxx>
> To: adilger.kernel@xxxxxxxxx, linux-ext4@xxxxxxxxxxxxxxx,
> linux-kernel@xxxxxxxxxxxxxxx, syzkaller-bugs@xxxxxxxxxxxxxxxx, tytso@xxxxxxx
> Content-Type: text/plain; charset="UTF-8"
>
> Hello,
>
> syzbot found the following issue on:
>
> HEAD commit: a1c24ab82279 Merge branch 'for-next/el2-enable-feat-pmuv3p..
> git tree: git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci
> console output: https://syzkaller.appspot.com/x/log.txt?x=17f953b8580000
> kernel config: https://syzkaller.appspot.com/x/.config?x=f6b108de97771157
> dashboard link: https://syzkaller.appspot.com/bug?extid=b73703b873a33d8eb8f6
> compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
> userspace arch: arm64
>
> Unfortunately, I don't have any reproducer for this issue yet.
>
> Downloadable assets:
> disk image: https://storage.googleapis.com/syzbot-assets/9581dbc26f55/disk-a1c24ab8.raw.xz
> vmlinux: https://storage.googleapis.com/syzbot-assets/50aec9ab8b8b/vmlinux-a1c24ab8.xz
> kernel image: https://storage.googleapis.com/syzbot-assets/3a018984f8f5/Image-a1c24ab8.gz.xz
>
> IMPORTANT: if you fix the issue, please add the following tag to the commit:
> Reported-by: syzbot+b73703b873a33d8eb8f6@xxxxxxxxxxxxxxxxxxxxxxxxx
>
> ==================================================================
> BUG: KASAN: slab-use-after-free in ext4_ext_rm_leaf fs/ext4/extents.c:2623 [inline]
> BUG: KASAN: slab-use-after-free in ext4_ext_remove_space+0x2ce0/0x4058 fs/ext4/extents.c:2961
> Read of size 4 at addr ffff0000dae2c4c8 by task syz.3.297/8071
>
> CPU: 0 UID: 0 PID: 8071 Comm: syz.3.297 Not tainted 6.14.0-rc3-syzkaller-ga1c24ab82279 #0
> Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
> Call trace:
> show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C)
> __dump_stack lib/dump_stack.c:94 [inline]
> dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120
> print_address_description mm/kasan/report.c:378 [inline]
> print_report+0x198/0x538 mm/kasan/report.c:489
> kasan_report+0xd8/0x138 mm/kasan/report.c:602
> __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380
> ext4_ext_rm_leaf fs/ext4/extents.c:2623 [inline]
> ext4_ext_remove_space+0x2ce0/0x4058 fs/ext4/extents.c:2961
> ext4_ext_truncate+0x134/0x1d4 fs/ext4/extents.c:4466
> ext4_truncate+0x9dc/0x10ac fs/ext4/inode.c:4217
> ext4_setattr+0xdc8/0x173c fs/ext4/inode.c:5542
> notify_change+0x9f0/0xca0 fs/attr.c:552
> do_truncate+0x1c0/0x28c fs/open.c:65
> handle_truncate fs/namei.c:3451 [inline]
> do_open fs/namei.c:3834 [inline]
> path_openat+0x249c/0x2b1c fs/namei.c:3989
> do_filp_open+0x1e8/0x404 fs/namei.c:4016
> do_sys_openat2+0x124/0x1b8 fs/open.c:1428
> do_sys_open fs/open.c:1443 [inline]
> __do_sys_openat fs/open.c:1459 [inline]
> __se_sys_openat fs/open.c:1454 [inline]
> __arm64_sys_openat+0x1f0/0x240 fs/open.c:1454
> __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
> invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49
> el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132
> do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151
> el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744
> el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762
> el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
>
> Allocated by task 6060:
> kasan_save_stack mm/kasan/common.c:47 [inline]
> kasan_save_track+0x40/0x78 mm/kasan/common.c:68
> kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:562
> unpoison_slab_object mm/kasan/common.c:319 [inline]
> __kasan_slab_alloc+0x74/0x8c mm/kasan/common.c:345
> 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+0x254/0x410 mm/slub.c:4171
> getname_flags+0xcc/0x4b4 fs/namei.c:139
> do_readlinkat+0xbc/0x4d4 fs/stat.c:563
> __do_sys_readlinkat fs/stat.c:595 [inline]
> __se_sys_readlinkat fs/stat.c:592 [inline]
> __arm64_sys_readlinkat+0x9c/0xb8 fs/stat.c:592
> __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
> invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49
> el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132
> do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151
> el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744
> el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762
> el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
>
> Freed by task 6060:
> kasan_save_stack mm/kasan/common.c:47 [inline]
> kasan_save_track+0x40/0x78 mm/kasan/common.c:68
> kasan_save_free_info+0x54/0x6c mm/kasan/generic.c:576
> poison_slab_object mm/kasan/common.c:247 [inline]
> __kasan_slab_free+0x64/0x8c mm/kasan/common.c:264
> kasan_slab_free include/linux/kasan.h:233 [inline]
> slab_free_hook mm/slub.c:2353 [inline]
> slab_free mm/slub.c:4609 [inline]
> kmem_cache_free+0x198/0x554 mm/slub.c:4711
> putname+0x130/0x184 fs/namei.c:296
> do_readlinkat+0x25c/0x4d4 fs/stat.c:584
> __do_sys_readlinkat fs/stat.c:595 [inline]
> __se_sys_readlinkat fs/stat.c:592 [inline]
> __arm64_sys_readlinkat+0x9c/0xb8 fs/stat.c:592
> __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]
> invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49
> el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132
> do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151
> el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744
> el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762
> el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600
>
> The buggy address belongs to the object at ffff0000dae2c400
> which belongs to the cache names_cache of size 4096
> The buggy address is located 200 bytes inside of
> freed 4096-byte region [ffff0000dae2c400, ffff0000dae2d400)
>
> The buggy address belongs to the physical page:
> page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x11ae28
> head: order:3 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0
> flags: 0x5ffc00000000040(head|node=0|zone=2|lastcpupid=0x7ff)
> page_type: f5(slab)
> raw: 05ffc00000000040 ffff0000c18a88c0 dead000000000122 0000000000000000
> raw: 0000000000000000 0000000000070007 00000000f5000000 0000000000000000
> head: 05ffc00000000040 ffff0000c18a88c0 dead000000000122 0000000000000000
> head: 0000000000000000 0000000000070007 00000000f5000000 0000000000000000
> head: 05ffc00000000003 fffffdffc36b8a01 ffffffffffffffff 0000000000000000
> head: 0000000000000008 0000000000000000 00000000ffffffff 0000000000000000
> page dumped because: kasan: bad access detected
>
> Memory state around the buggy address:
> ffff0000dae2c380: fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc fc
> ffff0000dae2c400: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
>> ffff0000dae2c480: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
> ^
> ffff0000dae2c500: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
> ffff0000dae2c580: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb
> ==================================================================
>
>
> ---
> This report is generated by a bot. It may contain errors.
> See https://goo.gl/tpsmEJ for more information about syzbot.
> syzbot engineers can be reached at syzkaller@xxxxxxxxxxxxxxxx.
>
> syzbot will keep track of this issue. See:
> https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
>
> If the report is already addressed, let syzbot know by replying with:
> #syz fix: exact-commit-title
>
> If you want to overwrite report's subsystems, reply with:
> #syz set subsystems: new-subsystem
> (See the list of subsystem names on the web dashboard)
>
> If the report is a duplicate of another one, reply with:
> #syz dup: exact-subject-of-another-report
>
> If you want to undo deduplication, reply with:
> #syz undup
>