---
id: CVE-2024-26869
title: 'f2fs: fix to truncate meta inode pages forcely'
summary: "In the Linux kernel, the following vulnerability has been resolved:\n\nf2fs: fix to truncate meta inode pages forcely\n\nBelow race case can cause data corruption:\n\nThread A\t\t\t\tGC thread\n\t\t\t\t\t- gc_data_segment\n\t\t\t\t\t - ra_data_block\n\t\t\t\t\t  - …"
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d <
    0721a4f85d12a364002a9476c84b930fbc993f83
  - >-
    Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d <
    c92f2927df860a60ba815d3ee610a944b92a8694
  - >-
    Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d <
    77bfdb89cc222fc7bfe198eda77bdc427d5ac189
  - >-
    Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d <
    04226d8e3c4028dc451e9d8777356ec0f7919253
  - >-
    Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d <
    9f0c4a46be1fe9b97dbe66d49204c1371e3ece65
  - Linux 4.19
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2024-06-12T17:28:33.962208Z'
published: '2024-04-17'
updated: '2026-10-30'
sourceUpdated: '2026-10-30T12:17:55.855Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2024-26869'
references:
  - url: 'https://git.kernel.org/stable/c/0721a4f85d12a364002a9476c84b930fbc993f83'
  - url: 'https://git.kernel.org/stable/c/c92f2927df860a60ba815d3ee610a944b92a8694'
  - url: 'https://git.kernel.org/stable/c/77bfdb89cc222fc7bfe198eda77bdc427d5ac189'
  - url: 'https://git.kernel.org/stable/c/04226d8e3c4028dc451e9d8777356ec0f7919253'
  - url: 'https://git.kernel.org/stable/c/9f0c4a46be1fe9b97dbe66d49204c1371e3ece65'
tags:
  - cve.org
epss: 0.00181
epssPercentile: 0.0772
ingestedAt: '2026-11-03T12:44:28.798Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

f2fs: fix to truncate meta inode pages forcely

Below race case can cause data corruption:

Thread A				GC thread
					- gc_data_segment
					 - ra_data_block
					  - locked meta_inode page
- f2fs_inplace_write_data
 - invalidate_mapping_pages
 : fail to invalidate meta_inode page
   due to lock failure or dirty|writeback
   status
 - f2fs_submit_page_bio
 : write last dirty data to old blkaddr
					 - move_data_block
					  - load old data from meta_inode page
					  - f2fs_submit_page_write
					  : write old data to new blkaddr

Because invalidate_mapping_pages() will skip invalidating page which
has unclear status including locked, dirty, writeback and so on, so
we need to use truncate_inode_pages_range() instead of
invalidate_mapping_pages() to make sure meta_inode page will be dropped.

## Affected

- `Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d < 0721a4f85d12a364002a9476c84b930fbc993f83`
- `Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d < c92f2927df860a60ba815d3ee610a944b92a8694`
- `Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d < 77bfdb89cc222fc7bfe198eda77bdc427d5ac189`
- `Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d < 04226d8e3c4028dc451e9d8777356ec0f7919253`
- `Linux >= 6aa58d8ad20a3323f42274c25820a6f54192422d < 9f0c4a46be1fe9b97dbe66d49204c1371e3ece65`
- `Linux 4.19`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
