CVE intelligence and bounded remediation

CVE-2024-35798 — Linux Linux Kernel security vulnerability

Medium CVSS 4.7

In the Linux kernel, the following vulnerability has been resolved: btrfs: fix race in read_extent_buffer_pages() There are reports from tree-checker that detects corrupted nodes, without any obvious pattern so possibly an overwrite in memory. After some debugging it turns out there's a race when reading an extent buffer the uptodate status can be missed. To prevent concurrent reads for the same extent buffer, read_extent_buffer_pages() performs these checks: /* (1) */ if (test_bit(EXTENT_BUFFER_UPTODATE, &eb->bflags)) return 0; /* (2) */ if (test_and_set_bit(EXTENT_BUFFER_READING, &eb->bflags)) goto done; At this point, it seems safe to start the actual read operation. Once that completes, end_bbio_meta_read() does /* (3) */ set_extent_buffer_uptodate(eb); /* (4) */ clear_bit(EXTENT_BUFFER_READING, &eb->bflags); Normally, this is enough to ensure only one read happens, and all other callers wait for it to finish before returning. Unfortunately, there is a racey interleaving: Thread A | Thread B | Thread C ---------+----------+--------- (1) | | | (1) | (2) | | (3) | | (4) | | | (2) | | | (1) When this happens, thread B kicks of an unnecessary read. Worse, thread C will see UPTODAT…

Severity
Medium
CVSS
4.7 (3.1)
Published
2024-05-17
CISA KEV
Not currently listed
Ecosystem
linux/kernel
Weaknesses
CWE-362

Affected products

  • linux / linux_kernel
  • linux / linux_kernel / 6.9

Showing 2 representative product identities from 4 source matches. Confirm exact affected versions with the linked vendor and NVD evidence.

Matched remediation archetype

Race condition, TOCTOU, and lifecycle synchronization

This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.

Check exposure

  • Map concurrent actors, shared state, lock boundaries, signals, callbacks, retries, and check-then-use sequences in the affected path.
  • Determine whether untrusted users can influence timing, object names, filesystem state, or repeated state transitions.
  • Identify clustered and multi-process behavior that repository-local tests may not represent.

Remediate safely

  • Make the sensitive state transition atomic or protect it with a consistently ordered synchronization primitive.
  • Perform authorization and invariant checks on the same authoritative object and transaction used for the operation.
  • Use unique private resources, safe ownership transfer, and idempotent operations; add deterministic concurrency regression tests.

Authoritative sources

Complete CVE record and remediation plan

The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.