Answer in brief
CVE-2026-97587 records a Unknown severity vulnerability in perf: RISC-V: store available counter mask as bitmap. The current sources do not mark it as known exploited. The current feed maps Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
A CVSS score is not reported in the current record. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| Linux/Linuxgeneric | >=e9991434596f5373dfd75857b445eb92a9253c56 <143668c424772979a45118dc9cc9c2c13a35f41d || >=e9991434596f5373dfd75857b445eb92a9253c56 <9bec7beaed074bcae4181fde9ff9dfbe4e7b0957 || >=e9991434596f5373dfd75857b445eb92a9253c56 <e5481db31f4654e9a1254d5d467d9b1ff2f8b1cb || >=e9991434596f5373dfd75857b445eb92a9253c56 <6809da6e9c08ccc9a09cb0a48c61471679274aaa | 143668c424772979a45118dc9cc9c2c13a35f41d, 9bec7beaed074bcae4181fde9ff9dfbe4e7b0957, e5481db31f4654e9a1254d5d467d9b1ff2f8b1cb, 6809da6e9c08ccc9a09cb0a48c61471679274aaa |
| Linux/Linuxgeneric | 5.18 | Not reported |
Published upstream
Sep 25, 2026
Evidence: source:cvelist:source_dates:source-dates:recordSource modified
Sep 25, 2026
Evidence: source:cvelist:source_dates:source-dates:recordFirst seen by HOL
Sep 25, 2026
In the Linux kernel, the following vulnerability has been resolved: perf: RISC-V: store available counter mask as bitmap The available-counter mask was a single unsigned long, but iteration uses RISCV_MAX_COUNTERS, which is 64. On RV32 that reads past the object. Filling with an unsigned-long bit at index 32 and above is also wrong. Use DECLARE_BITMAP and set_bit/bitmap helpers. Walk each bitmap word into CFG_MATCH when checking events, when allocating an index, and when stopping all counters. Set the counter base to i times BITS_PER_LONG. Share the CFG_MATCH ecall through a small helper so the 32-bit argument split is not duplicated. On qemu-system-riscv32 the probe bitmap has bits above XLEN set, so the first word alone is not enough. [[email protected]: updated to apply; fixed checkpatch.pl issues]
Quoted source text, attributed separately from HOL analysis.