{"id":"CVE-2026-99095","summary":"drm/vc4: drain the hangcheck timer and works on V3D unbind","details":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/vc4: drain the hangcheck timer and works on V3D unbind\n\nNothing stops the hangcheck timer that submitted jobs arm, or the\njob_done_work that the render-done interrupt queues, at teardown:\nvc4_irq_disable() cancels only overflow_mem_work, and vc4_gem_destroy()\nruns from the drm-managed release, after vc4_v3d_unbind() has already\nuninstalled the V3D interrupt and cleared vc4-\u003ev3d. A timer still armed\nby then reads V3D registers through the NULL vc4-\u003ev3d pointer, and the\nlate callbacks run on the vc4_dev embedding them after it has been\nfreed.\n\nDrain them in vc4_v3d_unbind(): shut the timer down and cancel\nreset_work before the interrupt is taken down, because its\nvc4_irq_reset() re-enables it, then flush job_done_work so that\ncompletions queued at teardown still release their jobs.\n\nThis issue was found by an in-house static analysis tool.","modified":"2026-11-06T17:27:22.944396003Z","published":"2026-10-26T14:52:02.647Z","related":["SUSE-SU-2026:24550-1"],"database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/99xxx/CVE-2026-99095.json","cna_assigner":"Linux"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/17c5fa371de2d5508755cd4cd227cc8e2bb99240"},{"type":"WEB","url":"https://git.kernel.org/stable/c/839eebfc95f8530feaa99677274912ac09b5820b"},{"type":"WEB","url":"https://git.kernel.org/stable/c/94cf5971b1d04c6382437387c4dc3836cc7a1437"},{"type":"WEB","url":"https://git.kernel.org/stable/c/a046cd60ff3f4a8c8e672b3b18902682c1f91731"},{"type":"WEB","url":"https://git.kernel.org/stable/c/a1e7c7789aef551eea85de2f63989753c4fe9df6"},{"type":"WEB","url":"https://git.kernel.org/stable/c/ade226dfd28cf2fd1dce143c556d1ee77d953696"},{"type":"WEB","url":"https://git.kernel.org/stable/c/e61465d3e0292daebf4dbb34e0add635e2439569"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/99xxx/CVE-2026-99095.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-99095"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"d5b1a78a772f1e31a94f8babfa964152ec5e9aa5"},{"fixed":"839eebfc95f8530feaa99677274912ac09b5820b"},{"fixed":"a1e7c7789aef551eea85de2f63989753c4fe9df6"},{"fixed":"17c5fa371de2d5508755cd4cd227cc8e2bb99240"},{"fixed":"a046cd60ff3f4a8c8e672b3b18902682c1f91731"},{"fixed":"e61465d3e0292daebf4dbb34e0add635e2439569"},{"fixed":"ade226dfd28cf2fd1dce143c556d1ee77d953696"},{"fixed":"94cf5971b1d04c6382437387c4dc3836cc7a1437"}]}],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-99095.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.5.0"},{"fixed":"5.15.224"}]},{"type":"ECOSYSTEM","events":[{"introduced":"5.16.0"},{"fixed":"6.1.191"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.2.0"},{"fixed":"6.6.160"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.7.0"},{"fixed":"6.12.113"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.13.0"},{"fixed":"6.18.57"}]},{"type":"ECOSYSTEM","events":[{"introduced":"6.19.0"},{"fixed":"7.2.11"}]}],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-99095.json"}}],"schema_version":"1.9.2"}