Skip to main content
← All vulnerabilities
CVE-2026-72164

ocfs2: avoid moving extents to occupied clusters

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.261, 5.15.212, 6.1.178, 6.6.145, 6.12.97, and 2 more
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: total

Summary

In the Linux kernel, the following vulnerability has been resolved: ocfs2: avoid moving extents to occupied clusters For non-auto OCFS2_IOC_MOVE_EXT operations, userspace supplies a physical me_goal. ocfs2_move_extent() initializes new_phys_cpos from that goal and expects ocfs2_probe_alloc_group() to replace it with a free run in the target block group. The probe currently leaves *phys_cpos unchanged if the scan reaches the end of the group without finding a free run. An occupied goal at the last bit can therefore survive the probe and be passed to __ocfs2_move_extent(), which copies file data into a cluster still owned by another inode before the bitmap is updated. When the probe does find a free run, it also subtracts move_len from the ending bit. The start of an N-bit run ending at i is i - N + 1, so the current calculation can report the bit immediately before the free run. Clear *phys_cpos before scanning and use the correct free-run start. Callers already treat a zero result as -ENOSPC, so failed probes no longer continue with an occupied caller-controlled goal.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • Linux Linux

    From e6b5859cccfa0fec02f3c5b1069481efc7186f47 · fixed in 3112afebf2a76e522fbaabcbb0c47aafbdc35932; From e6b5859cccfa0fec02f3c5b1069481efc7186f47 · fixed in 35486b291b8fbde6c4d0b1c79e565c6260d3329d; From e6b5859cccfa0fec02f3c5b1069481efc7186f47 · fixed in 19f7b04924b20b81dabbeed19d5542792ba5b6d6; From e6b5859cccfa0fec02f3c5b1069481efc7186f47 · fixed in e281d892ce5870a50fdc718cb3bfc3dd5b62c728; From e6b5859cccfa0fec02f3c5b1069481efc7186f47 · fixed in 0d0c5c17b18bdbc592ac26ab4d1de7e3dbf9be1e; From e6b5859cccfa0fec02f3c5b1069481efc7186f47 · fixed in d5d5a21fb33cd9b963aea99da81e4dacd452cd95; From e6b5859cccfa0fec02f3c5b1069481efc7186f47 · fixed in 4d1953d3aeb4a7f6623083e1839068ee1c157db2; From e6b5859cccfa0fec02f3c5b1069481efc7186f47 · fixed in 22920541c35a9f23f219038ba5874c843a7c4419

  • Linux Linux

    3.0

  • KernelLinux

    From 3.0.0 · fixed in 5.10.261; From 5.11.0 · fixed in 5.15.212; From 5.16.0 · fixed in 6.1.178; From 6.2.0 · fixed in 6.6.145; From 6.7.0 · fixed in 6.12.97; From 6.13.0 · fixed in 6.18.40; From 6.19.0 · fixed in 7.1.5

References 8

git.kernel.org