CVE-2025-39878CWE-476

CVE-2025-39878

Medium · published September 23, 2025

CVSS v3.1
5.5
EPSS
0%
Percentile
3.6
In the wild
Unconfirmed
What it is

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

ceph: fix crash after fscrypt_encrypt_pagecache_blocks() error

The function move_dirty_folio_in_page_array() was created by commit

ce80b76dd327 ("ceph: introduce ceph_process_folio_batch() method") by

moving code from ceph_writepages_start() to this function.

This new function is supposed to return an error code which is checked

by the caller (now ceph_process_folio_batch()), and on error, the

caller invokes redirty_page_for_writepage() and then breaks from the

loop.

However, the refactoring commit has gone wrong, and it by accident, it

always returns 0 (= success) because it first NULLs the pointer and

then returns PTR_ERR(NULL) which is always 0. This means errors are

silently ignored, leaving NULL entries in the page array, which may

later crash the kernel.

The simple solution is to call PTR_ERR() before clearing the pointer.

The record
Technical detail
CVSS v3.1
5.5 · MEDIUM
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00146 · 3.6th percentile
Weakness
CWE-476 · NULL Pointer Dereference
Published
2025-09-23T10:15Z
Affected products (6)
ProductVersionsFixed in
linux/linux_kernel≥ 6.15, < 6.16.86.16.8
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (3)
EPSS history
Timeline
  • 23 SEP 06:00Z
    ceph: fix crash after fscrypt_encrypt_pagecache_blocks() error
    cvelistv5