{"id":"CVE-2026-74442","title":"drm/vmwgfx: avoid destroy_workqueue(NULL) on vkms init failure","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/vmwgfx: avoid destroy_workqueue(NULL) on vkms init failure\n\nTwo paths through vmw_vkms_init() can leave vmw->crc_workq NULL while\nstill leaving the rest of the driv…","severity":"none","vendor":"Linux","product":"Linux","affected":["Linux >= 7b0062036c3b71b4a69e244ecf0502c06c4cf5f0 < 7c701778c6a369769992614dac8dc00c8ac72afc","Linux >= 7b0062036c3b71b4a69e244ecf0502c06c4cf5f0 < 96efee36453b697ccbaf75091b7a1807c11809dd","Linux >= 7b0062036c3b71b4a69e244ecf0502c06c4cf5f0 < 0ee0532f1d405d37f38c44cbba87342e63d3bbd4","Linux >= 7b0062036c3b71b4a69e244ecf0502c06c4cf5f0 < 05eaa887e7b4f40fba425f8a1d7a5a8a043092a6","Linux 6.10"],"ssvc":{"exploitation":"none","automatable":"no","technicalImpact":"partial","timestamp":"2026-11-06T16:57:19.019172Z"},"published":"2026-08-15","updated":"2026-11-06","sourceUpdated":"2026-11-06T17:05:45.879Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-74442","references":[{"url":"https://git.kernel.org/stable/c/7c701778c6a369769992614dac8dc00c8ac72afc"},{"url":"https://git.kernel.org/stable/c/96efee36453b697ccbaf75091b7a1807c11809dd"},{"url":"https://git.kernel.org/stable/c/0ee0532f1d405d37f38c44cbba87342e63d3bbd4"},{"url":"https://git.kernel.org/stable/c/05eaa887e7b4f40fba425f8a1d7a5a8a043092a6"}],"tags":["cve.org"],"epss":0.00168,"epssPercentile":0.06129,"ingestedAt":"2026-11-06T18:00:12.559Z","slug":"CVE-2026-74442","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\ndrm/vmwgfx: avoid destroy_workqueue(NULL) on vkms init failure\n\nTwo paths through vmw_vkms_init() can leave vmw->crc_workq NULL while\nstill leaving the rest of the driver in a state that calls\nvmw_vkms_cleanup() at module unload:\n\n  1. vmw_host_get_guestinfo(GUESTINFO_VBLANK, ...) failing or\n     returning an oversized buffer -- the common case on hosts\n     without a VBLANK guestinfo entry -- early-returned before the\n     workqueue allocation.\n  2. alloc_ordered_workqueue() returning NULL on memory pressure.\n\nvmw_vkms_cleanup() then calls destroy_workqueue(NULL), which\ndereferences wq->name and panics.\n\nFix the first case by removing the early return: vmw->vkms_enabled\nis already false on the rpci-failure path so no work will ever be\nqueued, and allocating the workqueue unconditionally keeps the\ncontrol flow simple.  Fix the second case by guarding the cleanup\nwith a NULL check, since alloc_ordered_workqueue() can still fail\nunder low memory.\n\n## Affected\n\n- `Linux >= 7b0062036c3b71b4a69e244ecf0502c06c4cf5f0 < 7c701778c6a369769992614dac8dc00c8ac72afc`\n- `Linux >= 7b0062036c3b71b4a69e244ecf0502c06c4cf5f0 < 96efee36453b697ccbaf75091b7a1807c11809dd`\n- `Linux >= 7b0062036c3b71b4a69e244ecf0502c06c4cf5f0 < 0ee0532f1d405d37f38c44cbba87342e63d3bbd4`\n- `Linux >= 7b0062036c3b71b4a69e244ecf0502c06c4cf5f0 < 05eaa887e7b4f40fba425f8a1d7a5a8a043092a6`\n- `Linux 6.10`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"sunlit","depthScore":3,"depthScoreParts":{"impact":2.8,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}