CVE-2026-53018

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
24/06/2026
Last modified:
15/07/2026

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> f2fs: avoid reading already updated pages during GC<br /> <br /> We found the following issue during fuzz testing:<br /> <br /> page: refcount:3 mapcount:0 mapping:00000000b6e89c65 index:0x18b2dc pfn:0x161ba9<br /> memcg:f8ffff800e269c00<br /> aops:f2fs_meta_aops ino:2<br /> flags: 0x52880000000080a9(locked|waiters|uptodate|lru|private|zone=1|kasantag=0x4a)<br /> raw: 52880000000080a9 fffffffec6e17588 fffffffec0ccc088 a7ffff8067063618<br /> raw: 000000000018b2dc 0000000000000009 00000003ffffffff f8ffff800e269c00<br /> page dumped because: VM_BUG_ON_FOLIO(folio_test_uptodate(folio))<br /> page_owner tracks the page as allocated<br /> post_alloc_hook+0x58c/0x5ec<br /> prep_new_page+0x34/0x284<br /> get_page_from_freelist+0x2dcc/0x2e8c<br /> __alloc_pages_noprof+0x280/0x76c<br /> __folio_alloc_noprof+0x18/0xac<br /> __filemap_get_folio+0x6bc/0xdc4<br /> pagecache_get_page+0x3c/0x104<br /> do_garbage_collect+0x5c78/0x77a4<br /> f2fs_gc+0xd74/0x25f0<br /> gc_thread_func+0xb28/0x2930<br /> kthread+0x464/0x5d8<br /> ret_from_fork+0x10/0x20<br /> ------------[ cut here ]------------<br /> kernel BUG at mm/filemap.c:1563!<br /> folio_end_read+0x140/0x168<br /> f2fs_finish_read_bio+0x5c4/0xb80<br /> f2fs_read_end_io+0x64c/0x708<br /> bio_endio+0x85c/0x8c0<br /> blk_update_request+0x690/0x127c<br /> scsi_end_request+0x9c/0xb8c<br /> scsi_io_completion+0xf0/0x250<br /> scsi_finish_command+0x430/0x45c<br /> scsi_complete+0x178/0x6d4<br /> blk_mq_complete_request+0xcc/0x104<br /> scsi_done_internal+0x214/0x454<br /> scsi_done+0x24/0x34<br /> <br /> which is similar to the problem reported by syzbot:<br /> https://syzkaller.appspot.com/bug?extid=3686758660f980b402dc<br /> <br /> This case is consistent with the description in commit 9bf1a3f<br /> ("f2fs: avoid GC causing encrypted file corrupted"):<br /> Page 1 is moved from blkaddr A to blkaddr B by move_data_block, and after<br /> being written it is marked as uptodate. Then, Page 1 is moved from blkaddr<br /> B to blkaddr C, VM_BUG_ON_FOLIO was triggered in the endio initiated by<br /> ra_data_block.<br /> <br /> There is no need to read Page 1 again from blkaddr B, since it has already<br /> been updated. Therefore, avoid initiating I/O in this case.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.19 (including) 6.18.33 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.19 (including) 7.0.10 (excluding)