GPU VulnDB

Database/NVIDIA / GPU stack

nouveau: channel-kill event stays subscribed after the fence context is freed, racing teardown

CVSS 7.8CVE-2026-89803NVIDIA / GPU stackcurated

Impact

nouveau_channel_del() tears down the channel's fence context before it drops the channel-kill event subscription. A kill event delivered in that window runs nouveau_channel_killed() -> nouveau_fence_context_kill(), which takes a lock in and walks a list inside a fence context that has already been freed. The upstream commit describes the window as real but narrow on Fermi and newer - the GPU has to kill a channel at the exact moment the channel is being destroyed - and unreachable below Fermi, where nothing kills channels today. This is a use-after-free in kernel GPU state rather than a directly steerable primitive; the practical risk on a shared node is a host crash that takes every tenant on the box down with it. Only nodes running the in-tree nouveau driver are affected.

Who can reach it

Local. A process holding a nouveau DRM fd that can create and destroy channels while triggering GPU faults; the attacker does not control the timing of the kill event directly, so the race is hard to drive deliberately.

What to do

Take the stable-kernel update that moves nvif_event_dtor(&chan->kill) ahead of the fence-context teardown. Kernel fix, so drain and reboot the node. Nodes that blacklist nouveau in favour of the NVIDIA proprietary or open kernel modules are unaffected.

References

Related entries

All NVIDIA / GPU stack entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.