syzbot


KMSAN: kernel-infoleak-after-free in anon_pipe_read

Status: moderation: reported on 2026/01/10 06:04
Subsystems: fs
[Documentation on labels]
Reported-by: syzbot+630a8a70b1a515561ca5@syzkaller.appspotmail.com
First crash: 6d01h, last: 6d01h

Sample crash report:
=====================================================
BUG: KMSAN: kernel-infoleak-after-free in instrument_copy_to_user include/linux/instrumented.h:114 [inline]
BUG: KMSAN: kernel-infoleak-after-free in copy_to_user_iter lib/iov_iter.c:24 [inline]
BUG: KMSAN: kernel-infoleak-after-free in iterate_ubuf include/linux/iov_iter.h:30 [inline]
BUG: KMSAN: kernel-infoleak-after-free in iterate_and_advance2 include/linux/iov_iter.h:302 [inline]
BUG: KMSAN: kernel-infoleak-after-free in iterate_and_advance include/linux/iov_iter.h:330 [inline]
BUG: KMSAN: kernel-infoleak-after-free in _copy_to_iter+0xef3/0x33f0 lib/iov_iter.c:197
 instrument_copy_to_user include/linux/instrumented.h:114 [inline]
 copy_to_user_iter lib/iov_iter.c:24 [inline]
 iterate_ubuf include/linux/iov_iter.h:30 [inline]
 iterate_and_advance2 include/linux/iov_iter.h:302 [inline]
 iterate_and_advance include/linux/iov_iter.h:330 [inline]
 _copy_to_iter+0xef3/0x33f0 lib/iov_iter.c:197
 copy_page_to_iter+0x482/0x910 lib/iov_iter.c:374
 anon_pipe_read+0x769/0x1e80 fs/pipe.c:343
 new_sync_read fs/read_write.c:491 [inline]
 vfs_read+0x8ed/0xf90 fs/read_write.c:572
 ksys_read fs/read_write.c:715 [inline]
 __do_sys_read fs/read_write.c:724 [inline]
 __se_sys_read fs/read_write.c:722 [inline]
 __ia32_sys_read+0x1f9/0x4d0 fs/read_write.c:722
 ia32_sys_call+0x191f/0x4340 arch/x86/include/generated/asm/syscalls_32.h:4
 do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
 __do_fast_syscall_32+0x154/0x320 arch/x86/entry/syscall_32.c:307
 do_fast_syscall_32+0x38/0x80 arch/x86/entry/syscall_32.c:332
 do_SYSENTER_32+0x1f/0x30 arch/x86/entry/syscall_32.c:370
 entry_SYSENTER_compat_after_hwframe+0x84/0x8e

Uninit was stored to memory at:
 memcpy_to_folio include/linux/highmem.h:518 [inline]
 zswap_decompress+0x2bd/0x1000 mm/zswap.c:946
 zswap_load+0x262/0x570 mm/zswap.c:1627
 swap_read_folio+0x662/0x3050 mm/page_io.c:637
 swap_cluster_readahead+0x725/0xb20 mm/swap_state.c:652
 shmem_swapin_cluster mm/shmem.c:1745 [inline]
 shmem_swapin_folio+0x1fd9/0x3ee0 mm/shmem.c:2329
 shmem_get_folio_gfp+0x92a/0x1fc0 mm/shmem.c:2489
 shmem_get_folio mm/shmem.c:2662 [inline]
 shmem_file_splice_read+0x350/0x11e0 mm/shmem.c:3567
 do_splice_read fs/splice.c:982 [inline]
 splice_file_to_pipe+0x5b4/0x8f0 fs/splice.c:1292
 do_splice+0x29d8/0x30d0 fs/splice.c:1376
 __do_splice fs/splice.c:1433 [inline]
 __do_sys_splice fs/splice.c:1636 [inline]
 __se_sys_splice+0x549/0x8c0 fs/splice.c:1618
 __ia32_sys_splice+0x112/0x1a0 fs/splice.c:1618
 ia32_sys_call+0x31a6/0x4340 arch/x86/include/generated/asm/syscalls_32.h:314
 do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
 __do_fast_syscall_32+0x154/0x320 arch/x86/entry/syscall_32.c:307
 do_fast_syscall_32+0x38/0x80 arch/x86/entry/syscall_32.c:332
 do_SYSENTER_32+0x1f/0x30 arch/x86/entry/syscall_32.c:370
 entry_SYSENTER_compat_after_hwframe+0x84/0x8e

Uninit was created at:
 free_pages_prepare mm/page_alloc.c:1328 [inline]
 free_unref_folios+0x26a/0x29a0 mm/page_alloc.c:3000
 folios_put_refs+0xaac/0xb10 mm/swap.c:1002
 folios_put include/linux/mm.h:1671 [inline]
 __folio_batch_release+0xe1/0x100 mm/swap.c:1062
 folio_batch_release include/linux/pagevec.h:101 [inline]
 shmem_undo_range+0x929/0x20c0 mm/shmem.c:1137
 shmem_truncate_range mm/shmem.c:1249 [inline]
 shmem_evict_inode+0x22c/0xed0 mm/shmem.c:1379
 evict+0x6a9/0xca0 fs/inode.c:837
 iput_final fs/inode.c:1951 [inline]
 iput+0xc6f/0x1070 fs/inode.c:2003
 do_unlinkat+0x58a/0xd80 fs/namei.c:5443
 __do_sys_unlink fs/namei.c:5474 [inline]
 __se_sys_unlink fs/namei.c:5472 [inline]
 __ia32_sys_unlink+0x70/0xa0 fs/namei.c:5472
 ia32_sys_call+0x1e4a/0x4340 arch/x86/include/generated/asm/syscalls_32.h:11
 do_syscall_32_irqs_on arch/x86/entry/syscall_32.c:83 [inline]
 __do_fast_syscall_32+0x154/0x320 arch/x86/entry/syscall_32.c:307
 do_fast_syscall_32+0x38/0x80 arch/x86/entry/syscall_32.c:332
 do_SYSENTER_32+0x1f/0x30 arch/x86/entry/syscall_32.c:370
 entry_SYSENTER_compat_after_hwframe+0x84/0x8e

Bytes 0-1023 of 1024 are uninitialized
Memory access of size 1024 starts at ffff8880731d2000
Data copied to user address 0000000056912be0

CPU: 1 UID: 0 PID: 5779 Comm: syz-executor Tainted: G        W           syzkaller #0 PREEMPT(none) 
Tainted: [W]=WARN
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/25/2025
=====================================================

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/01/06 05:57 upstream 7f98ab9da046 d6526ea3 .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kmsan-gce-386-root KMSAN: kernel-infoleak-after-free in anon_pipe_read
* Struck through repros no longer work on HEAD.