CVE-2022-49360

f2fs: fix to do sanity check on total_data_blocks

MEDIUM
5.5
CVSS Score
Published: February 26, 2025 at 02:11 AM UTC
Updated: August 15, 2026 at 01:36 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.3%

Description

In the Linux kernel, the following vulnerability has been resolved: f2fs: fix to do sanity check on total_data_blocks As Yanming reported in bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=215916 The kernel message is shown below: kernel BUG at fs/f2fs/segment.c:2560! Call Trace: allocate_segment_by_default+0x228/0x440 f2fs_allocate_data_block+0x13d1/0x31f0 do_write_page+0x18d/0x710 f2fs_outplace_write_data+0x151/0x250 f2fs_do_write_data_page+0xef9/0x1980 move_data_page+0x6af/0xbc0 do_garbage_collect+0x312f/0x46f0 f2fs_gc+0x6b0/0x3bc0 f2fs_balance_fs+0x921/0x2260 f2fs_write_single_data_page+0x16be/0x2370 f2fs_write_cache_pages+0x428/0xd00 f2fs_write_data_pages+0x96e/0xd50 do_writepages+0x168/0x550 __writeback_single_inode+0x9f/0x870 writeback_sb_inodes+0x47d/0xb20 __writeback_inodes_wb+0xb2/0x200 wb_writeback+0x4bd/0x660 wb_workfn+0x5f3/0xab0 process_one_work+0x79f/0x13e0 worker_thread+0x89/0xf60 kthread+0x26a/0x300 ret_from_fork+0x22/0x30 RIP: 0010:new_curseg+0xe8d/0x15f0 The root cause is: ckpt.valid_block_count is inconsistent with SIT table, stat info indicates filesystem has free blocks, but SIT table indicates filesystem has no free segment. So that during garbage colloection, it triggers panic when LFS allocator fails to find free segment. This patch tries to fix this issue by checking consistency in between ckpt.valid_block_count and block accounted from SIT.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

3.8 ≤ v < 5.10.1213.8 ≤ v < 5.15.463.8 ≤ v < 5.17.143.8 ≤ v < 5.18.33.8 ≤ v < 5.195.11 ≤ v < 5.15.465.16 ≤ v < 5.17.145.18 ≤ v < 5.18.33.8351df4b201157351c7d26bf12c3eeb9dbce98854
Vendor states this is fixed in 071b1269a3b3ad9cec16ed76a48015bfffd9aee8 (fixed)
Vendor states this is fixed in 6b8beca0edd32075a769bfe4178ca00c0dcd22a9 (fixed)
Vendor states this is fixed in c9e4cd5b0ccd7168801d6a811919171b185c5cf8 (fixed)
Vendor states this is fixed in cc8c9df19971e59ebbe669ce710080e347dfec32 (fixed)
Vendor states this is fixed in ef221b738b26d8c9f7e7967f4586db2dd3bd5288 (fixed)
Vendor states this is fixed in 3.8 (unaffected)
Vendor states this is fixed in 5.10.121 (unaffected)
Vendor states this is fixed in 5.15.46 (unaffected)
Vendor states this is fixed in 5.17.14 (unaffected)
Vendor states this is fixed in 5.18.3 (unaffected)
Vendor states this is fixed in 5.19 (unaffected)

References (5)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/071b1269a3b3ad9cec16ed76a48015bfffd9aee8
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/6b8beca0edd32075a769bfe4178ca00c0dcd22a9
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/c9e4cd5b0ccd7168801d6a811919171b185c5cf8
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/cc8c9df19971e59ebbe669ce710080e347dfec32
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/ef221b738b26d8c9f7e7967f4586db2dd3bd5288

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
NVD-CWE-noinfo

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card