Answer in brief
CVE-2026-89764 records a High severity (CVSS 7.8) vulnerability in rust: devres: fix race between concurrent revokers. The current sources do not mark it as known exploited. The current feed maps Linux/Linux (generic), 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.
CVSS is 7.8. 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), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| Linux/Linuxgeneric | >=05aa6fb1c21d7fb9df735da24096d793223789d5 <e7930d857cc7930fc39b487ea9f3a453eca3713e || >=05aa6fb1c21d7fb9df735da24096d793223789d5 <c7e3d57c705ab1053a6a1bbef96795e792da1540 || >=05aa6fb1c21d7fb9df735da24096d793223789d5 <acc516dfa1972d31836b50abc0115216cd0fccc5 | e7930d857cc7930fc39b487ea9f3a453eca3713e, c7e3d57c705ab1053a6a1bbef96795e792da1540, acc516dfa1972d31836b50abc0115216cd0fccc5 |
| Linux/Linuxgeneric | >=05aa6fb1c21d7fb9df735da24096d793223789d5 <c7e3d57c705ab1053a6a1bbef96795e792da1540 || >=05aa6fb1c21d7fb9df735da24096d793223789d5 <acc516dfa1972d31836b50abc0115216cd0fccc5 | c7e3d57c705ab1053a6a1bbef96795e792da1540, acc516dfa1972d31836b50abc0115216cd0fccc5 |
| Linux/Linuxgeneric | 6.18 | Not reported |
Published upstream
Sep 11, 2026
Evidence: source:cvelist:source_dates:source-dates:recordSource modified
Oct 19, 2026
Evidence: source:cvelist:source_dates:source-dates:recordFirst seen by HOL
Sep 11, 2026
In the Linux kernel, the following vulnerability has been resolved: rust: devres: fix race between concurrent revokers There is a potential race condition when two paths try to revoke a Devres concurrently. The driver core's devres_release_all() calls Revocable::revoke() via the release callback, while Devres::drop() calls revoke_nosync() on another CPU. The revoker that does not claim the is_available swap returns immediately, but the revoker that did may still be executing drop_in_place() on the inner data. This can cause a use-after-free when the other revoker's caller proceeds to drop adjacent resources that drop_in_place() still references (e.g., Devres<DmaMappedSgt> racing with SGTable freeing the backing sg_table and pages). Fix this by adding a Completion. The release callback signals the Completion after revoke() finishes, and Devres::drop() waits for it when it loses the is_available swap. This ensures the wrapped object is fully torn down before Devres::drop() returns.
Quoted source text, attributed separately from HOL analysis.