GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux kernel perf/core: splitting a perf ring-buffer mapping leaks reference counts on the buffer

CVSS 7.8CVE-2025-38563Kernel, userspace & hypervisorcurated

Impact

perf requires every subsequent mapping of an event's ring buffer or AUX buffer to use the same offset and size, and its reference counting depends on that. Nothing stopped a process from splitting such a mapping with mmap(2), munmap(2) or mremap(2): the split produced extra perf_mmap_open() calls that took references, while the matching perf_mmap_close() calls no longer satisfied the offset and size checks and so did not drop them. The result is leaked reference counts, which means the ring buffer and AUX pages stay pinned for the lifetime of the machine. On a GPU node where profiling is routinely exposed to tenants, a local user can repeatedly leak pinned kernel memory until the node is out of usable RAM - and pinned, un-reclaimable memory is precisely what kills large training jobs. Recovery is a reboot; the leak cannot be reclaimed at runtime. The fix adds a may_split() callback that unconditionally returns -EINVAL.

Who can reach it

Local user who can open a perf event and mmap its buffer - that is, anyone on the node when perf_event_paranoid is relaxed (common on profiling-enabled GPU and HPC nodes) or any user already permitted to profile. No remote path and no special capability beyond perf access.

What to do

Update to a stable kernel carrying the may_split() fix and reboot each node; this is core perf code, not a module, so there is no hot path to it. As an interim mitigation, raise perf_event_paranoid so unprivileged users cannot open perf events on nodes that do not need tenant profiling. Only the upstream commits are present in the record; no advisory names a single fixed version.

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.