{"id":"CVE-2026-98512","published":"2026-10-18T16:17:02.457","lastModified":"2026-10-19T10:19:04.787","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/nouveau: RCU-free the scheduler-containing nouveau_sched\n\nstruct nouveau_sched embeds a struct drm_gpu_scheduler (base).\nnouveau_sched_destroy() calls nouveau_sched_fini() (which does\ndrm_sched_fini(&sched->base)) and then frees the object with plain\nkfree(sched).\n\ndrm_sched_fence_get_timeline_name() returns fence->sched->name, and the\nscheduler fence keeps a .release callback so it is not ops-detached on\nsignalling.  A finished fence exported to userspace via drm_syncobj /\nsync_file therefore keeps pointing at &sched->base after nouveau_sched_destroy(),\nand a later get_timeline_name() -- reachable unprivileged through\nSYNC_IOC_FILE_INFO -- dereferences freed memory (KASAN slab-use-after-free\nread).\n\nPer the dma-fence lifetime contract the exporter must keep the data backing a\nsignalled fence alive for an RCU grace period.  Free the scheduler-containing\nobject with kfree_rcu() instead of kfree().","cvssScore":null,"cvssSeverity":null,"cvssVector":null,"cwes":[],"vendors":[],"products":[],"references":[{"url":"https://git.kernel.org/stable/c/35151e9a8274174ccbb92e3b3ba7dc7a008dcada","tags":[]},{"url":"https://git.kernel.org/stable/c/40edf5eefc3fd94592a91d6eb074d4fc6f606c75","tags":[]},{"url":"https://git.kernel.org/stable/c/cd6e11b6ebe04a0a1f1435df561acada9eadc563","tags":[]},{"url":"https://git.kernel.org/stable/c/f7eae6d8d768fabd6b59779ca7da79e02c74e113","tags":[]}],"exploitRefs":[],"hasPoc":false,"ai":null}