Linux kernel amdgpu (GEM eviction fence lifetime): amdgpu_gem_object_close() detaches the user-queue eviction fence
Impact
amdgpu_gem_object_close() detaches the user-queue eviction fence from a buffer object before checking bo_va->ref_count, so closing any one handle of a BO drops the fence even while the same file still holds another handle and keeps the GPU mappings. The BO can then be evicted without first suspending that file's user queues, which go on reading and writing through mappings that are only flagged for update - memory the kernel considers free or has handed to something else. On a shared AMD GPU node this is reachable by anything holding a render node, and the outcome is corruption or a hang of the GPU context rather than a clean fault, which usually ends in draining the node. The reporter reproduced it on navi31 with an SDMA user queue and a BO opened twice via GEM_FLINK plus GEM_OPEN. Only relevant where user queues are in use.
Who can reach it
Local user with access to an AMD render node (/dev/dri/renderD*) - any tenant with a GPU container on an AMD node. No special privilege beyond the device node; no remote path.
What to do
Pick up the stable kernel containing the fix (detach the fence only when the last bo_va reference goes away) and reboot the node; a GPU driver module reload is not practical on a node running workloads, so plan a drain and reboot per node. The kernel.org commits are the only published fix references - no distribution fixed version is stated in the record.
References
Related entries
- NVIDIA GPU Display Driver - kernel mode layer (Windows nvlddmkm.sys and Linux nvidia.ko): An out-of-bounds writeCVE-2022-28185 · NVIDIA GPU Display Driver - kernel mode layer (Windows nvlddmkm.sys and Linux nvidia.ko)Medium
- GeForce Experience installer: Local privesc during installCVE-2022-31611 · GeForce Experience installerMedium
- NVIDIA GPU Display Driver - Linux kernel module (nvidia.ko): A kernel helper maps more physical pages than wereCVE-2022-34674 · NVIDIA GPU Display Driver - Linux kernel module (nvidia.ko)Medium
- DGX H100 BMC (IPMI): DoS of the BMCCVE-2023-31010 · DGX H100 BMC (IPMI)Medium
- DGX A100 BMC: Missing authentication on BMC serviceCVE-2023-31033 · DGX A100 BMCMedium
- CUDA Toolkit: Memory-safety issueCVE-2024-0111 · CUDA ToolkitMedium
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.