CVE-2026-89803: drm/nouveau: unsubscribe the channel-kill event before the fence context
In the Linux kernel, the following vulnerability has been resolved:
drm/nouveau: unsubscribe the channel-kill event before the fence context
nouveauchanneldel() tears the fence context down first and only drops the channel-kill subscription later, in the middle of the nvif object teardown:
if (chan->fence) nouveaufence(chan->cli->drm)->contextdel(chan); ... nvifobjectdtor(&chan->vram); nvifeventdtor(&chan->kill);
The subscribed handler is nouveauchannelkilled(), which calls nouveauchannelkill() and from there nouveaufencecontextkill() on chan->fence. A kill event delivered in that window takes fctx->lock and walks fctx->pending on a fence context that contextdel() has already freed.
Nothing reaches this below Fermi today, because the subscription is gated on FERMICHANNELGPFIFO and nothing kills a channel there. On Fermi and newer the window is real but narrow, since a kill has to land exactly while the channel is being destroyed. That is reason enough on its own, which is why this carries a Fixes: tag. The last patch in this series subscribes Tesla channels as well; nothing kills those today, so it does not widen the exposure now, but it is the groundwork for a recovery path that would, and the ordering is better fixed before that lands than alongside it.
Drop the subscription before anything it depends on is torn down.
Event History
Frequently Asked Questions
Which systems are exposed to this race condition?
The reachable exposure is on Fermi and newer Nouveau channels, where channel-kill events can occur during channel destruction. It does not currently reach below Fermi because the subscription is gated on FERMI_CHANNEL_GPFIFO and channels are not killed there.
What must happen for the issue to be triggered?
A channel-kill event must be delivered in the narrow interval after the fence context has been deleted but before the channel-kill event subscription is removed. The event handler can then access the already freed fence context while processing pending fences.
Does Tesla support currently increase exposure?
No. The described Tesla-channel subscription groundwork does not widen current exposure because nothing kills Tesla channels today.