From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-oi1-f206.google.com (mail-oi1-f206.google.com [209.85.167.206]) (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 A0AE036EA84 for ; Fri, 6 Mar 2026 18:37:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.206 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772822279; cv=none; b=mk+XdwYIji+PA0gvuMiBxuauLSKVDD05T8+TdkaaPjYPXsPEQMAx1f4UJzmL7SJKHLc/TdKX9TTu/rxYzs8tR9tX7Dx402wqD4V9qZJHcwvnJjKY5g9uQfKCnoAgdaHC3h+MJYhbycOEvbvP9cJwMJ+MLRYQ13cctHw77y48Owc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772822279; c=relaxed/simple; bh=tkBH5GI9Pph2clwZw8Lok58KBicxH5AIi6pUccQXyvA=; h=MIME-Version:Date:In-Reply-To:Message-ID:Subject:From:To: Content-Type; b=fxWCFRnPaOaaqasDY9xqT6F0lS/ZKBsgxrKNvIwVRU3TDRbqpvD5Wg+5ZCRC4XQLV+Q9WhdCxPhGSHxsNKch55aCpF1IE120r3rh1HuXEXEt1t3M/Q3JlU2LHiAJ8CRJU6IBNAxnLREChMIwdZQO7sMsJLSN1VUTD59OFfiUpkY= 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.167.206 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-oi1-f206.google.com with SMTP id 5614622812f47-463c632f9a3so87258818b6e.1 for ; Fri, 06 Mar 2026 10:37:56 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772822275; x=1773427075; h=to:from:subject:message-id:in-reply-to:date:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=KvRmqjIuocKAnsKQ4mB62hE8hZjFVJF0QEk/DXcR7kY=; b=pRMk5e5xH26TvlEGH/wSDPQUgkExuXHPvm3u+PoOcYzKR+MAm+1myxah5WD+EfJ7MJ tFXbrel8MHKAyb/tBB8zUfN5/H4fkrfXeQtY8P0nLiUYB5a2H6MOs6kJfvfursvDFxJY QOtyns6FeAyyQvdMp5pN5jldwRTduxUr+0QZdgbUjgYMkNGaRcSxWNAF+SSL4FLAs2tT rlja+FDGrsjlxMWw4/gIz49wtQuxGR/SBtkfB6ieC4vGaKE53LoN0ZxYku8SY8wIPIBP vYHfjiVRYvCv+LmB/ZjkAjPpxzfu0oCOLte8SGDAu2MsUWw2aN97nAZNtO2NWRJQ7BN5 nNtg== X-Gm-Message-State: AOJu0YyQkrEj6FwskiuuA5pdPWBSZeQQaogTzZUfTuf/XsUd7GJb59j7 fYLyQp7Dpa9VNnqC/tiNqOGSgA3bZAaY9Y2mSDiF3+3DCpsu+yYk/8iUaqfu6Nykfh6PwUtxNOy 9cIK5wgX5WmKnxzFfTNPcwAUVnBDobz9Xsl75z1ACr0E43UHmZVeiwRyG/WY/uw== Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Received: by 2002:a05:6820:f027:b0:679:e59a:8b8c with SMTP id 006d021491bc7-67b9bca23f8mr1741004eaf.26.1772822275536; Fri, 06 Mar 2026 10:37:55 -0800 (PST) Date: Fri, 06 Mar 2026 10:37:55 -0800 In-Reply-To: <67ea7949.050a0220.1547ec.0137.GAE@google.com> X-Google-Appengine-App-Id: s~syzkaller X-Google-Appengine-App-Id-Alias: syzkaller Message-ID: <69ab1f03.050a0220.13f275.002a.GAE@google.com> Subject: Forwarded: Re: [syzbot] [ext4?] KASAN: slab-use-after-free Read in ext4_ext_remove_space From: syzbot To: linux-kernel@vger.kernel.org, syzkaller-bugs@googlegroups.com Content-Type: text/plain; charset="UTF-8" For archival purposes, forwarding an incoming command email to linux-kernel@vger.kernel.org, syzkaller-bugs@googlegroups.com. *** Subject: Re: [syzbot] [ext4?] KASAN: slab-use-after-free Read in ext4_ext_remove_space Author: koike@igalia.com #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@syzkaller.appspotmail.com > > ================================================================== > 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): [] __exit_to_kernel_mode arch/arm64/kernel/entry-common.c:85 [inline] > hardirqs last enabled at (23287): [] exit_to_kernel_mode+0xc0/0xf0 arch/arm64/kernel/entry-common.c:95 > hardirqs last disabled at (23286): [] __el1_irq arch/arm64/kernel/entry-common.c:580 [inline] > hardirqs last disabled at (23286): [] el1_interrupt+0x24/0x54 arch/arm64/kernel/entry-common.c:598 > softirqs last enabled at (21110): [] local_bh_enable+0x10/0x34 include/linux/bottom_half.h:32 > softirqs last disabled at (21108): [] 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 ; 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 ; 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@vger.kernel.org > List-Id: > List-Subscribe: > List-Unsubscribe: > 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@google.com> > Subject: [syzbot] [ext4?] KASAN: slab-use-after-free Read in ext4_ext_remove_space > From: syzbot > To: adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, > linux-kernel@vger.kernel.org, syzkaller-bugs@googlegroups.com, tytso@mit.edu > 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@syzkaller.appspotmail.com > > ================================================================== > 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@googlegroups.com. > > 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 >