* Re: [syzbot] [net?] kernel BUG in filemap_fault (2) [not found] <684ffc59.a00a0220.279073.0037.GAE@google.com> @ 2025-07-03 16:43 ` syzbot 2025-09-14 10:51 ` [syzbot] [sound?] " syzbot 1 sibling, 0 replies; 7+ messages in thread From: syzbot @ 2025-07-03 16:43 UTC (permalink / raw) To: davem, edumazet, horms, kuba, kuniyu, linux-kernel, linux-sound, netdev, pabeni, perex, syzkaller-bugs, tiwai, willemb syzbot has found a reproducer for the following issue on: HEAD commit: b4911fb0b060 Merge tag 'mmc-v6.16-rc1' of git://git.kernel.. git tree: upstream console output: https://syzkaller.appspot.com/x/log.txt?x=16568c8c580000 kernel config: https://syzkaller.appspot.com/x/.config?x=3f6ddf055b5c86f8 dashboard link: https://syzkaller.appspot.com/bug?extid=263f159eb37a1c4c67a4 compiler: Debian clang version 20.1.7 (++20250616065708+6146a88f6049-1~exp1~20250616065826.132), Debian LLD 20.1.7 syz repro: https://syzkaller.appspot.com/x/repro.syz?x=157cf48c580000 C reproducer: https://syzkaller.appspot.com/x/repro.c?x=146a948c580000 Downloadable assets: disk image: https://storage.googleapis.com/syzbot-assets/5828d857f454/disk-b4911fb0.raw.xz vmlinux: https://storage.googleapis.com/syzbot-assets/ecf6b7e29d2b/vmlinux-b4911fb0.xz kernel image: https://storage.googleapis.com/syzbot-assets/cc43b227e03d/bzImage-b4911fb0.xz IMPORTANT: if you fix the issue, please add the following tag to the commit: Reported-by: syzbot+263f159eb37a1c4c67a4@syzkaller.appspotmail.com __kasan_slab_alloc+0x22/0x80 mm/kasan/common.c:329 kasan_slab_alloc include/linux/kasan.h:250 [inline] slab_post_alloc_hook mm/slub.c:4148 [inline] slab_alloc_node mm/slub.c:4197 [inline] kmem_cache_alloc_node_noprof+0x1bb/0x3c0 mm/slub.c:4249 __alloc_skb+0x112/0x2d0 net/core/skbuff.c:660 alloc_skb include/linux/skbuff.h:1336 [inline] __ip6_append_data+0x2b8c/0x3de0 net/ipv6/ip6_output.c:1668 ip6_append_data+0x1c4/0x380 net/ipv6/ip6_output.c:1858 rawv6_sendmsg+0x124b/0x17f0 net/ipv6/raw.c:911 sock_sendmsg_nosec net/socket.c:712 [inline] __sock_sendmsg+0x19c/0x270 net/socket.c:727 ____sys_sendmsg+0x52d/0x830 net/socket.c:2566 ___sys_sendmsg+0x21f/0x2a0 net/socket.c:2620 __sys_sendmmsg+0x227/0x430 net/socket.c:2709 ------------[ cut here ]------------ kernel BUG at mm/filemap.c:3442! Oops: invalid opcode: 0000 [#1] SMP KASAN PTI CPU: 1 UID: 0 PID: 9236 Comm: syz.3.1035 Not tainted 6.16.0-rc4-syzkaller-00049-gb4911fb0b060 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025 RIP: 0010:filemap_fault+0x117d/0x1200 mm/filemap.c:3442 Code: 38 c1 0f 8c 8e fc ff ff 4c 89 e7 e8 8d 6b 29 00 e9 81 fc ff ff e8 a3 13 c8 ff 48 89 df 48 c7 c6 a0 30 94 8b e8 d4 ae 0d 00 90 <0f> 0b e8 8c 13 c8 ff 48 8b 3c 24 48 c7 c6 20 37 94 8b e8 bc ae 0d RSP: 0018:ffffc900030976e0 EFLAGS: 00010246 RAX: 864bab26a5780700 RBX: ffffea0001e53880 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff8d96e815 RDI: 00000000ffffffff RBP: ffffc90003097818 R08: ffffffff8f9fdbf7 R09: 1ffffffff1f3fb7e R10: dffffc0000000000 R11: fffffbfff1f3fb7f R12: dffffc0000000000 R13: 1ffffd40003ca711 R14: ffffea0001e53898 R15: ffffea0001e53888 FS: 00007f9550ed76c0(0000) GS:ffff888125d84000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000200000002000 CR3: 0000000059b4a000 CR4: 00000000003526f0 Call Trace: <TASK> __do_fault+0x135/0x390 mm/memory.c:5169 do_shared_fault mm/memory.c:5654 [inline] do_fault mm/memory.c:5728 [inline] do_pte_missing mm/memory.c:4251 [inline] handle_pte_fault mm/memory.c:6069 [inline] __handle_mm_fault+0x198b/0x5620 mm/memory.c:6212 handle_mm_fault+0x2d5/0x7f0 mm/memory.c:6381 do_user_addr_fault+0x764/0x1390 arch/x86/mm/fault.c:1387 handle_page_fault arch/x86/mm/fault.c:1476 [inline] exc_page_fault+0x76/0xf0 arch/x86/mm/fault.c:1532 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:623 RIP: 0010:__put_user_4+0xd/0x20 arch/x86/lib/putuser.S:94 Code: 66 89 01 31 c9 0f 01 ca e9 00 3b 03 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 48 89 cb 48 c1 fb 3f 48 09 d9 0f 01 cb <89> 01 31 c9 0f 01 ca e9 d7 3a 03 00 90 90 90 90 90 90 90 90 90 90 RSP: 0018:ffffc90003097c98 EFLAGS: 00050206 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 00002000000015b8 RDX: 0000000000000000 RSI: ffffffff8db5a681 RDI: ffffffff8be1b940 RBP: ffffc90003097eb0 R08: 0000000000000000 R09: ffffffff820a3bc0 R10: dffffc0000000000 R11: ffffed100b371081 R12: 0000200000001580 R13: 0000000000040000 R14: 0000200000000480 R15: 0000000000000044 __sys_sendmmsg+0x25f/0x430 net/socket.c:2714 __do_sys_sendmmsg net/socket.c:2736 [inline] __se_sys_sendmmsg net/socket.c:2733 [inline] __x64_sys_sendmmsg+0xa0/0xc0 net/socket.c:2733 do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline] do_syscall_64+0xfa/0x3b0 arch/x86/entry/syscall_64.c:94 entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f954ff8e929 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f9550ed7038 EFLAGS: 00000246 ORIG_RAX: 0000000000000133 RAX: ffffffffffffffda RBX: 00007f95501b5fa0 RCX: 00007f954ff8e929 RDX: 00000000000002e9 RSI: 0000200000000480 RDI: 0000000000000004 RBP: 00007f9550010b39 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 0000000000000000 R14: 00007f95501b5fa0 R15: 00007ffcd704c578 </TASK> Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:filemap_fault+0x117d/0x1200 mm/filemap.c:3442 Code: 38 c1 0f 8c 8e fc ff ff 4c 89 e7 e8 8d 6b 29 00 e9 81 fc ff ff e8 a3 13 c8 ff 48 89 df 48 c7 c6 a0 30 94 8b e8 d4 ae 0d 00 90 <0f> 0b e8 8c 13 c8 ff 48 8b 3c 24 48 c7 c6 20 37 94 8b e8 bc ae 0d RSP: 0018:ffffc900030976e0 EFLAGS: 00010246 RAX: 864bab26a5780700 RBX: ffffea0001e53880 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff8d96e815 RDI: 00000000ffffffff RBP: ffffc90003097818 R08: ffffffff8f9fdbf7 R09: 1ffffffff1f3fb7e R10: dffffc0000000000 R11: fffffbfff1f3fb7f R12: dffffc0000000000 R13: 1ffffd40003ca711 R14: ffffea0001e53898 R15: ffffea0001e53888 FS: 00007f9550ed76c0(0000) GS:ffff888125d84000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000200000002000 CR3: 0000000059b4a000 CR4: 00000000003526f0 ---------------- Code disassembly (best guess): 0: 66 89 01 mov %ax,(%rcx) 3: 31 c9 xor %ecx,%ecx 5: 0f 01 ca clac 8: e9 00 3b 03 00 jmp 0x33b0d d: 90 nop e: 90 nop f: 90 nop 10: 90 nop 11: 90 nop 12: 90 nop 13: 90 nop 14: 90 nop 15: 90 nop 16: 90 nop 17: 90 nop 18: 90 nop 19: 90 nop 1a: 90 nop 1b: 90 nop 1c: 90 nop 1d: 48 89 cb mov %rcx,%rbx 20: 48 c1 fb 3f sar $0x3f,%rbx 24: 48 09 d9 or %rbx,%rcx 27: 0f 01 cb stac * 2a: 89 01 mov %eax,(%rcx) <-- trapping instruction 2c: 31 c9 xor %ecx,%ecx 2e: 0f 01 ca clac 31: e9 d7 3a 03 00 jmp 0x33b0d 36: 90 nop 37: 90 nop 38: 90 nop 39: 90 nop 3a: 90 nop 3b: 90 nop 3c: 90 nop 3d: 90 nop 3e: 90 nop 3f: 90 nop --- 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. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [syzbot] [sound?] kernel BUG in filemap_fault (2) [not found] <684ffc59.a00a0220.279073.0037.GAE@google.com> 2025-07-03 16:43 ` [syzbot] [net?] kernel BUG in filemap_fault (2) syzbot @ 2025-09-14 10:51 ` syzbot 2025-09-16 12:50 ` Ryan Roberts 1 sibling, 1 reply; 7+ messages in thread From: syzbot @ 2025-09-14 10:51 UTC (permalink / raw) To: akpm, chaitanyas.prakash, davem, david, edumazet, hdanton, horms, jack, kuba, kuniyu, linux-kernel, linux-sound, netdev, pabeni, perex, ryan.roberts, syzkaller-bugs, tiwai, willemb syzbot suspects this issue was fixed by commit: commit bdb86f6b87633cc020f8225ae09d336da7826724 Author: Ryan Roberts <ryan.roberts@arm.com> Date: Mon Jun 9 09:27:23 2025 +0000 mm/readahead: honour new_order in page_cache_ra_order() bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=1100b934580000 start commit: b4911fb0b060 Merge tag 'mmc-v6.16-rc1' of git://git.kernel.. git tree: upstream kernel config: https://syzkaller.appspot.com/x/.config?x=3f6ddf055b5c86f8 dashboard link: https://syzkaller.appspot.com/bug?extid=263f159eb37a1c4c67a4 syz repro: https://syzkaller.appspot.com/x/repro.syz?x=157cf48c580000 C reproducer: https://syzkaller.appspot.com/x/repro.c?x=146a948c580000 If the result looks correct, please mark the issue as fixed by replying with: #syz fix: mm/readahead: honour new_order in page_cache_ra_order() For information about bisection process see: https://goo.gl/tpsmEJ#bisection ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [syzbot] [sound?] kernel BUG in filemap_fault (2) 2025-09-14 10:51 ` [syzbot] [sound?] " syzbot @ 2025-09-16 12:50 ` Ryan Roberts 2025-09-16 13:05 ` Jan Kara 0 siblings, 1 reply; 7+ messages in thread From: Ryan Roberts @ 2025-09-16 12:50 UTC (permalink / raw) To: syzbot, akpm, chaitanyas.prakash, davem, david, edumazet, hdanton, horms, jack, kuba, kuniyu, linux-kernel, linux-sound, netdev, pabeni, perex, syzkaller-bugs, tiwai, willemb On 14/09/2025 11:51, syzbot wrote: > syzbot suspects this issue was fixed by commit: > > commit bdb86f6b87633cc020f8225ae09d336da7826724 > Author: Ryan Roberts <ryan.roberts@arm.com> > Date: Mon Jun 9 09:27:23 2025 +0000 > > mm/readahead: honour new_order in page_cache_ra_order() I'm not sure what original bug you are claiming this is fixing? Perhaps this? https://lore.kernel.org/linux-mm/6852b77e.a70a0220.79d0a.0214.GAE@google.com/ If so, the fix for that was squashed into the original patch before it was merged upstream. That is now Commit 38b0ece6d763 ("mm/filemap: allow arch to request folio size for exec memory"). Thanks, Ryan > > bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=1100b934580000 > start commit: b4911fb0b060 Merge tag 'mmc-v6.16-rc1' of git://git.kernel.. > git tree: upstream > kernel config: https://syzkaller.appspot.com/x/.config?x=3f6ddf055b5c86f8 > dashboard link: https://syzkaller.appspot.com/bug?extid=263f159eb37a1c4c67a4 > syz repro: https://syzkaller.appspot.com/x/repro.syz?x=157cf48c580000 > C reproducer: https://syzkaller.appspot.com/x/repro.c?x=146a948c580000 > > If the result looks correct, please mark the issue as fixed by replying with: > > #syz fix: mm/readahead: honour new_order in page_cache_ra_order() > > For information about bisection process see: https://goo.gl/tpsmEJ#bisection ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [syzbot] [sound?] kernel BUG in filemap_fault (2) 2025-09-16 12:50 ` Ryan Roberts @ 2025-09-16 13:05 ` Jan Kara 2025-09-17 7:57 ` David Hildenbrand 0 siblings, 1 reply; 7+ messages in thread From: Jan Kara @ 2025-09-16 13:05 UTC (permalink / raw) To: Ryan Roberts Cc: syzbot, akpm, chaitanyas.prakash, davem, david, edumazet, hdanton, horms, jack, kuba, kuniyu, linux-kernel, linux-sound, netdev, pabeni, perex, syzkaller-bugs, tiwai, willemb On Tue 16-09-25 13:50:08, Ryan Roberts wrote: > On 14/09/2025 11:51, syzbot wrote: > > syzbot suspects this issue was fixed by commit: > > > > commit bdb86f6b87633cc020f8225ae09d336da7826724 > > Author: Ryan Roberts <ryan.roberts@arm.com> > > Date: Mon Jun 9 09:27:23 2025 +0000 > > > > mm/readahead: honour new_order in page_cache_ra_order() > > I'm not sure what original bug you are claiming this is fixing? Perhaps this? > > https://lore.kernel.org/linux-mm/6852b77e.a70a0220.79d0a.0214.GAE@google.com/ I think it was: https://lore.kernel.org/all/684ffc59.a00a0220.279073.0037.GAE@google.com/ at least that's what the syzbot email replies to... And it doesn't make a lot of sense but it isn't totally off either. So I'd just let the syzbot bug autoclose after some timeout. Honza -- Jan Kara <jack@suse.com> SUSE Labs, CR ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [syzbot] [sound?] kernel BUG in filemap_fault (2) 2025-09-16 13:05 ` Jan Kara @ 2025-09-17 7:57 ` David Hildenbrand 2025-09-17 8:35 ` Jan Kara 0 siblings, 1 reply; 7+ messages in thread From: David Hildenbrand @ 2025-09-17 7:57 UTC (permalink / raw) To: Jan Kara, Ryan Roberts Cc: syzbot, akpm, chaitanyas.prakash, davem, edumazet, hdanton, horms, kuba, kuniyu, linux-kernel, linux-sound, netdev, pabeni, perex, syzkaller-bugs, tiwai, willemb On 16.09.25 15:05, Jan Kara wrote: > On Tue 16-09-25 13:50:08, Ryan Roberts wrote: >> On 14/09/2025 11:51, syzbot wrote: >>> syzbot suspects this issue was fixed by commit: >>> >>> commit bdb86f6b87633cc020f8225ae09d336da7826724 >>> Author: Ryan Roberts <ryan.roberts@arm.com> >>> Date: Mon Jun 9 09:27:23 2025 +0000 >>> >>> mm/readahead: honour new_order in page_cache_ra_order() >> >> I'm not sure what original bug you are claiming this is fixing? Perhaps this? >> >> https://lore.kernel.org/linux-mm/6852b77e.a70a0220.79d0a.0214.GAE@google.com/ > > I think it was: > > https://lore.kernel.org/all/684ffc59.a00a0220.279073.0037.GAE@google.com/ > > at least that's what the syzbot email replies to... And it doesn't make a > lot of sense but it isn't totally off either. So I'd just let the syzbot > bug autoclose after some timeout. Hm, in the issue we ran into was: VM_BUG_ON_FOLIO(!folio_contains(folio, index), folio); in filemap_fault(). Now, that sounds rather bad, especially given that it was reported upstream. So likely we should figure out what happened and see if it really fixed it and if so, why it fixed it (stable backports etc)? Could be that Ryans patch is just making the problem harder to reproduce, of course (what I assume right now). Essentially we do a folio = filemap_get_folio(mapping, index); followed by if (!lock_folio_maybe_drop_mmap(vmf, folio, &fpin)) goto out_retry; /* Did it get truncated? */ if (unlikely(folio->mapping != mapping)) { folio_unlock(folio); folio_put(folio); goto retry_find; } VM_BUG_ON_FOLIO(!folio_contains(folio, index), folio); I would assume that if !folio_contains(folio, index), either the folio got split in the meantime (filemap_get_folio() returned with a raised reference, though) or that file pagecache contained something wrong. In __filemap_get_folio() we perform the same checks after locking the folio (with FGP_LOCK), and weird enough it didn't trigger yet there. -- Cheers David / dhildenb ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [syzbot] [sound?] kernel BUG in filemap_fault (2) 2025-09-17 7:57 ` David Hildenbrand @ 2025-09-17 8:35 ` Jan Kara 2025-09-17 9:04 ` David Hildenbrand 0 siblings, 1 reply; 7+ messages in thread From: Jan Kara @ 2025-09-17 8:35 UTC (permalink / raw) To: David Hildenbrand Cc: Jan Kara, Ryan Roberts, syzbot, akpm, chaitanyas.prakash, davem, edumazet, hdanton, horms, kuba, kuniyu, linux-kernel, linux-sound, netdev, pabeni, perex, syzkaller-bugs, tiwai, willemb On Wed 17-09-25 09:57:19, David Hildenbrand wrote: > On 16.09.25 15:05, Jan Kara wrote: > > On Tue 16-09-25 13:50:08, Ryan Roberts wrote: > > > On 14/09/2025 11:51, syzbot wrote: > > > > syzbot suspects this issue was fixed by commit: > > > > > > > > commit bdb86f6b87633cc020f8225ae09d336da7826724 > > > > Author: Ryan Roberts <ryan.roberts@arm.com> > > > > Date: Mon Jun 9 09:27:23 2025 +0000 > > > > > > > > mm/readahead: honour new_order in page_cache_ra_order() > > > > > > I'm not sure what original bug you are claiming this is fixing? Perhaps this? > > > > > > https://lore.kernel.org/linux-mm/6852b77e.a70a0220.79d0a.0214.GAE@google.com/ > > > > I think it was: > > > > https://lore.kernel.org/all/684ffc59.a00a0220.279073.0037.GAE@google.com/ > > > > at least that's what the syzbot email replies to... And it doesn't make a > > lot of sense but it isn't totally off either. So I'd just let the syzbot > > bug autoclose after some timeout. > > Hm, in the issue we ran into was: > > VM_BUG_ON_FOLIO(!folio_contains(folio, index), folio); > > in filemap_fault(). > > Now, that sounds rather bad, especially given that it was reported upstream. > > So likely we should figure out what happened and see if it really fixed it > and if so, why it fixed it (stable backports etc)? Ok, ok, fair enough ;) > Could be that Ryans patch is just making the problem harder to reproduce, of > course (what I assume right now). > > Essentially we do a > > folio = filemap_get_folio(mapping, index); > > followed by > > if (!lock_folio_maybe_drop_mmap(vmf, folio, &fpin)) > goto out_retry; > > /* Did it get truncated? */ > if (unlikely(folio->mapping != mapping)) { > folio_unlock(folio); > folio_put(folio); > goto retry_find; > } > VM_BUG_ON_FOLIO(!folio_contains(folio, index), folio); > > > I would assume that if !folio_contains(folio, index), either the folio got > split in the meantime (filemap_get_folio() returned with a raised reference, > though) or that file pagecache contained something wrong. Right. > In __filemap_get_folio() we perform the same checks after locking the folio > (with FGP_LOCK), and weird enough it didn't trigger yet there. But we don't call __filemap_get_folio() with FGP_LOCK from filemap_fault(). The folio locking is handled by lock_folio_maybe_drop_mmap() as you mentioned. So this is the first time we do the assert after getting the folio AFAICT. So some race with folio split looks plausible. Checking the reproducer it does play with mmap(2) and madvise(MADV_REMOVE) over the mapped range so the page fault may be racing with truncate_inode_partial_folio()->try_folio_split(). But I don't see the race there now... Honza -- Jan Kara <jack@suse.com> SUSE Labs, CR ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [syzbot] [sound?] kernel BUG in filemap_fault (2) 2025-09-17 8:35 ` Jan Kara @ 2025-09-17 9:04 ` David Hildenbrand 0 siblings, 0 replies; 7+ messages in thread From: David Hildenbrand @ 2025-09-17 9:04 UTC (permalink / raw) To: Jan Kara Cc: Ryan Roberts, syzbot, akpm, chaitanyas.prakash, davem, edumazet, hdanton, horms, kuba, kuniyu, linux-kernel, linux-sound, netdev, pabeni, perex, syzkaller-bugs, tiwai, willemb >> >> if (!lock_folio_maybe_drop_mmap(vmf, folio, &fpin)) >> goto out_retry; >> >> /* Did it get truncated? */ >> if (unlikely(folio->mapping != mapping)) { >> folio_unlock(folio); >> folio_put(folio); >> goto retry_find; >> } >> VM_BUG_ON_FOLIO(!folio_contains(folio, index), folio); >> >> >> I would assume that if !folio_contains(folio, index), either the folio got >> split in the meantime (filemap_get_folio() returned with a raised reference, >> though) or that file pagecache contained something wrong. > > Right. > >> In __filemap_get_folio() we perform the same checks after locking the folio >> (with FGP_LOCK), and weird enough it didn't trigger yet there. > > But we don't call __filemap_get_folio() with FGP_LOCK from filemap_fault(). Yes. I should have clarified that we haven't seen the VM_BUG_ON_FOLIO() trigger on other callpaths that set FGP_LOCK, because I would think the very same problem could happen there as well. > The folio locking is handled by lock_folio_maybe_drop_mmap() as you > mentioned. So this is the first time we do the assert after getting the > folio AFAICT. So some race with folio split looks plausible. Checking the > reproducer it does play with mmap(2) and madvise(MADV_REMOVE) over the > mapped range so the page fault may be racing with > truncate_inode_partial_folio()->try_folio_split(). But I don't see the race > there now... __filemap_get_folio() will grab a reference and verify that the xarray didn't change. So having a concurrent split succeed would be weird, because freezing the refcount should fail. Of course, some refcounting inconsistency could trigger something weird like that. I can spot that we are also manually calling __filemap_get_folio(FGP_CREAT|FGP_FOR_MMAP) on the else path if filemap_get_folio() failed, maybe that's the problematic bit (and maybe that's where readahead logic makes a difference). -- Cheers David / dhildenb ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-09-17 9:04 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <684ffc59.a00a0220.279073.0037.GAE@google.com>
2025-07-03 16:43 ` [syzbot] [net?] kernel BUG in filemap_fault (2) syzbot
2025-09-14 10:51 ` [syzbot] [sound?] " syzbot
2025-09-16 12:50 ` Ryan Roberts
2025-09-16 13:05 ` Jan Kara
2025-09-17 7:57 ` David Hildenbrand
2025-09-17 8:35 ` Jan Kara
2025-09-17 9:04 ` David Hildenbrand
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).