GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux kernel dma-buf: use-after-free racing close() against the dma_buf_fd tracepoint

CVSS 7.8CVE-2026-63910Kernel, userspace & hypervisorcurated

Impact

dma_buf_fd() installs the new file descriptor before emitting its tracepoint. A second thread sharing the file descriptor table can close() that fd in the window, dropping the last reference and freeing the dma_buf, after which the tracepoint dereferences the freed object to take dmabuf->name_lock - a slab use-after-free in kernel memory. dma-buf is the buffer-sharing path every GPU and accelerator driver uses to hand buffers to userspace, so the exporting ioctls are reachable from any process that holds a GPU device node, including a tenant's GPU container. A successful race corrupts kernel slab memory on a GPU node, which means a crash at best and a local escalation primitive at worst, and the node has to be drained and rebooted to recover.

Who can reach it

Local, unprivileged. Any process able to export a dma-buf - that is, anything holding an accelerator or DRM device node such as a GPU pod with /dev/dri or /dev/kfd - can race close() against the fd install from a second thread. No authentication beyond device access is needed. Exposure depends on the dma_buf_fd tracepoint being enabled, since the dereference is in the trace path.

What to do

Patch the kernel to a stable release that splits the fd install back into get_unused_fd_flags() plus fd_install() with the tracepoint emitted between them, then drain and reboot each affected node. Until patched, keeping the dma_buf tracepoints disabled removes the dereference. No vendor advisory beyond the upstream commits.

References

Related entries

All Kernel, userspace & hypervisor 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.