drm/nouveau/uvmm: fix NULL deref unwinding an OP_MAP_SPARSE op (Linux Linux)
En bref
- Source
- NVD
- EPSS
- EPSS 0.20 % · centile 10 ()
- État
- PUBLISHED
- Publiée
- Mise à jour
- Attribuée par
- Linux
- Statut NVD
- Received
Rechercher sur…
Description
In the Linux kernel, the following vulnerability has been resolved: drm/nouveau/uvmm: fix NULL deref unwinding an OP_MAP_SPARSE op Each bind_job_op is zeroed by kzalloc_obj() in bind_job_op_from_uop(), and the OP_MAP_SPARSE case in nouveau_uvmm_bind_job_submit() only creates a region, so op->ops stays NULL for a successfully processed sparse map. If a later op in the same job fails, the reverse unwind loop revisits that op and calls drm_gpuva_ops_free(&uvmm->base, op->ops) unconditionally. drm_gpuva_ops_free() dereferences its argument right away (list_for_each_entry_safe on &ops->list), so a NULL op->ops oopses. The path is reachable by any render-node fd holder, since NOUVEAU_VM_BIND is DRM_RENDER_ALLOW. Guard the free with IS_ERR_OR_NULL(), as nouveau_uvmm_bind_job_cleanup() already does for the identical free.
Références
- https://git.kernel.org/stable/c/d8ec34618e71018fd7a3f73c57c6b92d71a6c7c3
- https://git.kernel.org/stable/c/3bf493cf7ed0c2b3df728977a257e0d99b4db1c6
- https://git.kernel.org/stable/c/b7dc03e09313d22a6d230b759de3b05d504c008f
- https://git.kernel.org/stable/c/3857238de6bce6c1573e8cb86c37b067e5208f05
- https://git.kernel.org/stable/c/412a6ceb56d501ef2f8202e26ab4b5d4dfbca566
Références européennes
- ENISA EUVD · EUVD-2026-80402
- GCVE · GCVE-0-2026-89802
Avis du CERT-FR
- CERTFR-2026-AVI-1385 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1289 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1253 — Multiples vulnérabilités dans le noyau Linux de Debian · cert.ssi.gouv.fr
Produits affectés
| Produit | Versions |
|---|---|
| Linux · Linux | affected b88baab828713ce0b49b185444b2ee83bed373a8 < d8ec34618e71018fd7a3f73c57c6b92d71a6c7c3 ; affected b88baab828713ce0b49b185444b2ee83bed373a8 < 3bf493cf7ed0c2b3df728977a257e0d99b4db1c6 ; affected b88baab828713ce0b49b185444b2ee83bed373a8 < b7dc03e09313d22a6d230b759de3b05d504c008f ; affected b88baab828713ce0b49b185444b2ee83bed373a8 < 3857238de6bce6c1573e8cb86c37b067e5208f05 ; affected b88baab828713ce0b49b185444b2ee83bed373a8 < 412a6ceb56d501ef2f8202e26ab4b5d4dfbca566 |
| Linux · Linux | affected 6.6 ; unaffected 0 < 6.6 ; unaffected 6.6.160 ≤ 6.6.* ; unaffected 6.12.110 ≤ 6.12.* ; unaffected 6.18.51 ≤ 6.18.* ; unaffected 7.2.5 ≤ 7.2.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |