| Name | CVE-2026-89802 |
| 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. |
| Source | CVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
| References | DSA-6528-1 |
The table below lists information on source packages.
| Source Package | Release | Version | Status |
|---|---|---|---|
| linux (PTS) | bookworm | 6.1.176-1 | fixed |
| bookworm (security) | 6.1.187-1 | fixed | |
| trixie | 6.12.107-1 | vulnerable | |
| trixie (security) | 6.12.111-1 | fixed | |
| forky | 7.2.8-1 | fixed | |
| sid | 7.2.9-1 | fixed |
The information below is based on the following data on fixed versions.
| Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
|---|---|---|---|---|---|---|
| linux | source | bookworm | (not affected) | |||
| linux | source | trixie | 6.12.111-1 | DSA-6528-1 | ||
| linux | source | (unstable) | 7.2.6-1 |
[bookworm] - linux <not-affected> (Vulnerable code not present)
https://git.kernel.org/linus/412a6ceb56d501ef2f8202e26ab4b5d4dfbca566 (7.3-rc2)