GHSA-J46P-7HMV-QPV9

Vulnerability from github – Published: 2026-08-28 09:31 – Updated: 2026-08-28 09:31
VLAI
Details

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

powerpc/perf: fix preempt count underflow in fsl_emb_pmu_del

fsl_emb_pmu_del() unconditionally calls put_cpu_var(cpu_hw_events) at the 'out:' label, but only calls the matching get_cpu_var() after the 'i < 0' early-return check. When event->hw.idx is negative the function jumps to 'out:' without having taken get_cpu_var(), and the trailing put_cpu_var() then issues an unmatched preempt_enable(), underflowing preempt_count.

On a CONFIG_PREEMPT=y kernel preempt_count would underflow and eventually present as a 'scheduling while atomic' BUG.

Move put_cpu_var() to pair with get_cpu_var() so the percpu access is correctly bracketed and the 'out:' label only handles perf_pmu_enable.

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2026-80626"
  ],
  "database_specific": {
    "cwe_ids": [],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2026-08-28T08:16:46Z",
    "severity": null
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\npowerpc/perf: fix preempt count underflow in fsl_emb_pmu_del\n\nfsl_emb_pmu_del() unconditionally calls put_cpu_var(cpu_hw_events) at\nthe \u0027out:\u0027 label, but only calls the matching get_cpu_var() after the\n\u0027i \u003c 0\u0027 early-return check. When event-\u003ehw.idx is negative the\nfunction jumps to \u0027out:\u0027 without having taken get_cpu_var(), and the\ntrailing put_cpu_var() then issues an unmatched preempt_enable(),\nunderflowing preempt_count.\n\nOn a CONFIG_PREEMPT=y kernel preempt_count would underflow and\neventually present as a \u0027scheduling while atomic\u0027 BUG.\n\nMove put_cpu_var() to pair with get_cpu_var() so the percpu access is\ncorrectly bracketed and the \u0027out:\u0027 label only handles perf_pmu_enable.",
  "id": "GHSA-j46p-7hmv-qpv9",
  "modified": "2026-08-28T09:31:47Z",
  "published": "2026-08-28T09:31:47Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-80626"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/5397142d60aa29dcf636f5459d960bfc4f97c42a"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/67aeb1eb93d4ffd898a3e74a7f3fe46ee71feb28"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/73711688479df333acc134e3730fff1acba1843e"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/81e3a86030462824a67d697739cf3f387f4ba350"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/9a515e00b00132b6fc3f1dd62dc5204bbda8cb10"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/b504fd953664c3f4d176ae8cb594adb3fda9d577"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/b89477077c834d94381c7bf07d81193bebefcff9"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/c0c7722308c5f303117d8bd555290fdf26b098da"
    }
  ],
  "schema_version": "1.4.0",
  "severity": []
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…