All of lore.kernel.org
 help / color / mirror / Atom feed
From: syzbot <syzbot+fb32afec111a7d61b939@syzkaller.appspotmail.com>
To: kartikey406@gmail.com, linux-kernel@vger.kernel.org,
	 syzkaller-bugs@googlegroups.com
Subject: Re: [syzbot] [ext4?] KASAN: use-after-free Read in xattr_find_entry (2)
Date: Fri, 27 Mar 2026 07:05:02 -0700	[thread overview]
Message-ID: <69c68e8e.a00a0220.2a1a21.0000.GAE@google.com> (raw)
In-Reply-To: <20260327132753.332837-1-kartikey406@gmail.com>

Hello,

syzbot has tested the proposed patch but the reproducer is still triggering an issue:
KASAN: use-after-free Read in xattr_find_entry

DEBUG: inode 12: ibody_get IFIRST=ffff88806edbcfa4 end=ffff88806edbd000 gap=92
EXT4-fs error (device loop0): ext4_find_dest_de:2050: inode #12: block 7: comm syz.0.17: bad entry in directory: directory entry overrun - offset=0, inode=268435456, rec_len=1280, size=56 fake=0
DEBUG: inode 12: ext4_xattr_ibody_get called, EXT4_STATE_XATTR is set
DEBUG: inode 12: ibody_get IFIRST=ffff88806edbd004 end=ffff88806edbd000 gap=-4
==================================================================
BUG: KASAN: use-after-free in xattr_find_entry+0x1a5/0x280 fs/ext4/xattr.c:337
Read of size 4 at addr ffff88806edbd004 by task syz.0.17/6418

CPU: 0 UID: 49663 PID: 6418 Comm: syz.0.17 Not tainted syzkaller #0 PREEMPT(full) 
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2026
Call Trace:
 <TASK>
 dump_stack_lvl+0xe8/0x150 lib/dump_stack.c:120
 print_address_description mm/kasan/report.c:378 [inline]
 print_report+0xba/0x230 mm/kasan/report.c:482
 kasan_report+0x117/0x150 mm/kasan/report.c:595
 xattr_find_entry+0x1a5/0x280 fs/ext4/xattr.c:337
 ext4_xattr_ibody_get+0x314/0x560 fs/ext4/xattr.c:663
 ext4_xattr_get+0x123/0x6a0 fs/ext4/xattr.c:717
 ext4_get_acl+0x84/0x930 fs/ext4/acl.c:165
 __get_acl+0x27e/0x410 fs/posix_acl.c:159
 check_acl+0x3a/0x150 fs/namei.c:385
 acl_permission_check fs/namei.c:471 [inline]
 generic_permission+0x497/0x690 fs/namei.c:524
 do_inode_permission fs/namei.c:585 [inline]
 inode_permission+0x243/0x5f0 fs/namei.c:648
 lookup_inode_permission_may_exec fs/namei.c:-1 [inline]
 may_lookup fs/namei.c:1973 [inline]
 link_path_walk+0x1149/0x18d0 fs/namei.c:2595
 path_lookupat+0xe4/0x8c0 fs/namei.c:2803
 filename_lookup+0x256/0x5d0 fs/namei.c:2833
 user_path_at+0x40/0x160 fs/namei.c:3612
 do_mount fs/namespace.c:4169 [inline]
 __do_sys_mount fs/namespace.c:4361 [inline]
 __se_sys_mount+0x2dc/0x420 fs/namespace.c:4338
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x14d/0xf80 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7fda1a19c629
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 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 e8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007fda1b0a4028 EFLAGS: 00000246 ORIG_RAX: 00000000000000a5
RAX: ffffffffffffffda RBX: 00007fda1a415fa0 RCX: 00007fda1a19c629
RDX: 0000000000000000 RSI: 0000200000000040 RDI: 0000000000000000
RBP: 00007fda1a232b39 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000002094080 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fda1a416038 R14: 00007fda1a415fa0 R15: 00007ffe64a91a68
 </TASK>

The buggy address belongs to the physical page:
page: refcount:0 mapcount:0 mapping:0000000000000000 index:0x7f26dbd9c pfn:0x6edbd
flags: 0xfff00000000000(node=0|zone=1|lastcpupid=0x7ff)
raw: 00fff00000000000 ffffea0001bb6008 ffffea0001bb8dc8 0000000000000000
raw: 00000007f26dbd9c 0000000000000000 00000000ffffffff 0000000000000000
page dumped because: kasan: bad access detected
page_owner tracks the page as freed
page last allocated via order 0, migratetype Movable, gfp_mask 0x140dca(GFP_HIGHUSER_MOVABLE|__GFP_ZERO|__GFP_COMP), pid 6414, tgid 6414 (rm), ts 151550332214, free_ts 151570996513
 set_page_owner include/linux/page_owner.h:32 [inline]
 post_alloc_hook+0x231/0x280 mm/page_alloc.c:1889
 prep_new_page mm/page_alloc.c:1897 [inline]
 get_page_from_freelist+0x24dc/0x2580 mm/page_alloc.c:3962
 __alloc_frozen_pages_noprof+0x18d/0x380 mm/page_alloc.c:5250
 alloc_pages_mpol+0x232/0x4a0 mm/mempolicy.c:2484
 folio_alloc_mpol_noprof mm/mempolicy.c:2503 [inline]
 vma_alloc_folio_noprof+0xea/0x210 mm/mempolicy.c:2538
 folio_prealloc mm/memory.c:-1 [inline]
 alloc_anon_folio mm/memory.c:5209 [inline]
 do_anonymous_page mm/memory.c:5266 [inline]
 do_pte_missing+0x1656/0x3490 mm/memory.c:4475
 handle_pte_fault mm/memory.c:6317 [inline]
 __handle_mm_fault mm/memory.c:6455 [inline]
 handle_mm_fault+0x1bec/0x3310 mm/memory.c:6624
 do_user_addr_fault+0xa73/0x1340 arch/x86/mm/fault.c:1334
 handle_page_fault arch/x86/mm/fault.c:1474 [inline]
 exc_page_fault+0x6a/0xc0 arch/x86/mm/fault.c:1527
 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:618
page last free pid 6414 tgid 6414 stack trace:
 reset_page_owner include/linux/page_owner.h:25 [inline]
 __free_pages_prepare mm/page_alloc.c:1433 [inline]
 free_unref_folios+0xed5/0x16d0 mm/page_alloc.c:3040
 folios_put_refs+0x789/0x8d0 mm/swap.c:1002
 free_pages_and_swap_cache+0x2e7/0x5b0 mm/swap_state.c:423
 __tlb_batch_free_encoded_pages mm/mmu_gather.c:138 [inline]
 tlb_batch_pages_flush mm/mmu_gather.c:151 [inline]
 tlb_flush_mmu_free mm/mmu_gather.c:398 [inline]
 tlb_flush_mmu+0x6d3/0xa30 mm/mmu_gather.c:405
 tlb_finish_mmu+0xf9/0x230 mm/mmu_gather.c:530
 exit_mmap+0x498/0xa10 mm/mmap.c:1315
 __mmput+0x118/0x430 kernel/fork.c:1175
 exit_mm+0x168/0x220 kernel/exit.c:581
 do_exit+0x6a2/0x23c0 kernel/exit.c:964
 do_group_exit+0x21b/0x2d0 kernel/exit.c:1118
 __do_sys_exit_group kernel/exit.c:1129 [inline]
 __se_sys_exit_group kernel/exit.c:1127 [inline]
 __x64_sys_exit_group+0x3f/0x40 kernel/exit.c:1127
 x64_sys_call+0x221a/0x2240 arch/x86/include/generated/asm/syscalls_64.h:232
 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]
 do_syscall_64+0x14d/0xf80 arch/x86/entry/syscall_64.c:94
 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Memory state around the buggy address:
 ffff88806edbcf00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
 ffff88806edbcf80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
>ffff88806edbd000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
                   ^
 ffff88806edbd080: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
 ffff88806edbd100: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff
==================================================================


Tested on:

commit:         46b51325 Merge tag 'v7.0-rc5-smb3-client-fix' of git:/..
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=173a9848580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=b643133b3e44c9fd
dashboard link: https://syzkaller.appspot.com/bug?extid=fb32afec111a7d61b939
compiler:       Debian clang version 21.1.8 (++20251221033036+2078da43e25a-1~exp1~20251221153213.50), Debian LLD 21.1.8
patch:          https://syzkaller.appspot.com/x/patch.diff?x=175a4eda580000


       reply	other threads:[~2026-03-27 14:05 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20260327132753.332837-1-kartikey406@gmail.com>
2026-03-27 14:05 ` syzbot [this message]
     [not found] <20260331010427.388123-1-kartikey406@gmail.com>
2026-03-31  4:38 ` [syzbot] [ext4?] KASAN: use-after-free Read in xattr_find_entry (2) syzbot
     [not found] <20260330014309.369720-1-kartikey406@gmail.com>
2026-03-30  2:41 ` syzbot
     [not found] <20260326145044.29484-1-kartikey406@gmail.com>
2026-03-26 16:59 ` syzbot
     [not found] <20260224085214.19679-1-kartikey406@gmail.com>
2026-02-24 10:05 ` syzbot
     [not found] <20260224083610.17722-1-kartikey406@gmail.com>
2026-02-24  9:41 ` syzbot
2026-02-23  0:12 syzbot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=69c68e8e.a00a0220.2a1a21.0000.GAE@google.com \
    --to=syzbot+fb32afec111a7d61b939@syzkaller.appspotmail.com \
    --cc=kartikey406@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=syzkaller-bugs@googlegroups.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.