Skip to content
Heist/ feed
Critical

gcov: use atomic counter updates to fix concurrent access crashes

Type: advisorySource: Official CVE List1 source record

In the Linux kernel, the following vulnerability has been resolved: gcov: use atomic counter updates to fix concurrent access crashes GCC's GCOV instrumentation can merge global branch counters with loop induction variables as an optimization. In inflate_fast(), the inner copy loops get transformed so that the GCOV counter value is loaded multiple times to compute the loop base address, start index, and end bound. Since GCOV counters are global (not per-CPU), concurrent execution on different CPUs causes the counter to change between loads, producing inconsistent values and out-of-bounds memory writes. The crash manifests during IPComp (IP Payload Compression) processing when inflate_fast() runs concurrently on multiple CPUs: BUG: unable to handle page fault for address: ffffd0a3c0902ffa RIP: inflate_fast+1431 Call Trace: zlib_inflate __deflate_decompress crypto_comp_decompress ipcomp_decompress [xfrm_ipcomp] ipcomp_input [xfrm_ipcomp] xfrm_input At the crash point, the compiler generated three loads from the same global GCOV counter (__gcov0.inflate_fast+216) to compute base, start, and end for an indexed loop. Another CPU modified the counter between loads, making the values inconsistent - the write went 3.4 MB past a 65 KB buffer. Add -fprofile-update=prefer-atomic to CFLAGS_GCOV at the global level in the top-level Makefile, guarded by a try-run compile test. The test compiles a minimal program with and without -fprofile-update=prefer-atomic using the full KBUILD_CFLAGS,

Announced Group revision 1
Original source ↗

CVE-2026-63825

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2026-63825

Linux

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Linux

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "2521f2c228ad750701ba4702484e31d876dbc386",
        "lessThan": "b0f7bd5eeb903a0021a80e9d704814e2a9d3998c",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "2521f2c228ad750701ba4702484e31d876dbc386",
        "lessThan": "4575852c23a10abc7648d31e4c12cf79d7391637",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "2521f2c228ad750701ba4702484e31d876dbc386",
        "lessThan": "49d893b9cbcfc5802a32e53a64c6c6956670d65b",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "2521f2c228ad750701ba4702484e31d876dbc386",
        "lessThan": "5b959c1dbb4522b9e3ac4e26ad638b8784869841",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "2521f2c228ad750701ba4702484e31d876dbc386",
        "lessThan": "56cb9b7d96b28a1173a510ab25354b6599ad3a33",
        "versionType": "git"
      }
    ],
    "programFiles": [
      "Makefile"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "2.6.31"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "2.6.31",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "6.6.160",
        "versionType": "semver",
        "lessThanOrEqual": "6.6.*"
      },
      {
        "status": "unaffected",
        "version": "6.12.114",
        "versionType": "semver",
        "lessThanOrEqual": "6.12.*"
      },
      {
        "status": "unaffected",
        "version": "6.18.38",
        "versionType": "semver",
        "lessThanOrEqual": "6.18.*"
      },
      {
        "status": "unaffected",
        "version": "7.1.3",
        "versionType": "semver",
        "lessThanOrEqual": "7.1.*"
      },
      {
        "status": "unaffected",
        "version": "7.2",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "Makefile"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2026-63825

Source reference: /cveMetadata/cveId

Publisher severity

critical

Source reference: /containers/cna/metrics

Event
#46397 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement