* CVE-2026-89800: drm/nouveau/uvmm: clear the dirty flag when unwinding an OP_UNMAP_SPARSE
@ 2026-09-16 10:28 Greg Kroah-Hartman
0 siblings, 0 replies; only message in thread
From: Greg Kroah-Hartman @ 2026-09-16 10:28 UTC (permalink / raw)
To: linux-cve-announce; +Cc: Greg Kroah-Hartman
From: Greg Kroah-Hartman <gregkh@kernel.org>
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
drm/nouveau/uvmm: clear the dirty flag when unwinding an OP_UNMAP_SPARSE
A successful OP_UNMAP_SPARSE marks its region dirty with
nouveau_uvma_region_dirty() and defers the teardown to
nouveau_uvmm_bind_job_cleanup(); it does not remove the region from
uvmm->region_mt.
If a later op in the job fails, the unwind path never clears reg->dirty
(set in one place, cleared nowhere) and sets op->reg = NULL, so cleanup
skips the teardown. The region is left in the tree with dirty set and its
completion never signalled. Later binds over that range then fail
permanently -- -ENOENT or -EINVAL from the dirty checks, or an unkillable
wait_for_completion() in bind_validate_region() -- for the lifetime of
the uvmm.
Clear reg->dirty when the unwind reverts the sparse unmap, restoring the
region to the state it was found in.
The Linux kernel CVE team has assigned CVE-2026-89800 to this issue.
Affected and fixed versions
===========================
Issue introduced in 6.6 with commit b88baab828713ce0b49b185444b2ee83bed373a8 and fixed in 6.6.157 with commit a129b2b875c148aba233ace8447a0c36ca3bae07
Issue introduced in 6.6 with commit b88baab828713ce0b49b185444b2ee83bed373a8 and fixed in 6.12.110 with commit 196ce9e5e93202da097062be24e404984dbc5ac2
Issue introduced in 6.6 with commit b88baab828713ce0b49b185444b2ee83bed373a8 and fixed in 6.18.51 with commit 1101cbfe7f342e5eaaf7444965d4f1215abdac4c
Issue introduced in 6.6 with commit b88baab828713ce0b49b185444b2ee83bed373a8 and fixed in 7.2.5 with commit c60033c172420179b7bbb3d1f843f8dc90164dc5
Issue introduced in 6.6 with commit b88baab828713ce0b49b185444b2ee83bed373a8 and fixed in 7.3-rc2 with commit 38a62306c4266bcb3cd89e33c7111ee33096ebb3
Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2026-89800
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
drivers/gpu/drm/nouveau/nouveau_uvmm.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/a129b2b875c148aba233ace8447a0c36ca3bae07
https://git.kernel.org/stable/c/196ce9e5e93202da097062be24e404984dbc5ac2
https://git.kernel.org/stable/c/1101cbfe7f342e5eaaf7444965d4f1215abdac4c
https://git.kernel.org/stable/c/c60033c172420179b7bbb3d1f843f8dc90164dc5
https://git.kernel.org/stable/c/38a62306c4266bcb3cd89e33c7111ee33096ebb3
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-09-16 10:34 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-16 10:28 CVE-2026-89800: drm/nouveau/uvmm: clear the dirty flag when unwinding an OP_UNMAP_SPARSE Greg Kroah-Hartman
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.