{"id":"CVE-2026-99209","aliases":[],"title":"drm/xe: skip eviction of a BO with no resource","titleSource":"Linux","descriptionSource":"Linux","products":[{"vendor":"Linux","name":"Linux","platforms":[],"versions":[{"version":"dd08ebf6c3525a7ea2186e636df064ea47281987","status":"affected","lessThan":"6046bb9cb2859e3d9bf939e4d6527f3827e1096f","versionType":"git"},{"version":"dd08ebf6c3525a7ea2186e636df064ea47281987","status":"affected","lessThan":"b6499d19ade1f1e4a1e6b739abc8c815297c98b8","versionType":"git"},{"version":"dd08ebf6c3525a7ea2186e636df064ea47281987","status":"affected","lessThan":"448e76cbdc6652ccd3ba337b7a6e1f028859f2ed","versionType":"git"}],"defaultStatus":"unaffected","source":"Linux","url":"https://www.cve.org/CVERecord?id=CVE-2026-99209"},{"vendor":"Linux","name":"Linux","platforms":[],"versions":[{"version":"6.8","status":"affected"},{"version":"0","status":"unaffected","lessThan":"6.8","versionType":"semver"},{"version":"6.18.59","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.2.13","status":"unaffected","lessThanOrEqual":"7.2.*","versionType":"semver"},{"version":"7.3","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"defaultStatus":"affected","source":"Linux","url":"https://www.cve.org/CVERecord?id=CVE-2026-99209"}],"remediation":[],"description":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/xe: skip eviction of a BO with no resource\n\nxe_evict_flags() switches on tbo->resource->mem_type to choose an\neviction placement. An xe BO can reach eviction with no ttm.resource,\ne.g. an imported dma-buf BO whose resource was freed during teardown\nwhile its attachment is still live: the exporter then invalidates it via\nxe_dma_buf_move_notify() -> xe_bo_evict(), and the switch dereferences a\nNULL resource and faults.\n\nA BO with no resource has nothing placed or mapped, so there is nothing\nto evict. Return an empty placement (num_placement = 0), mirroring the\nhandling already used for non-xe scatter-gather BOs just above;\nttm_bo_validate() then takes the pipeline-gutting path and returns 0.\n\nWithout the fix the xe_dma_buf@xe_test_dmabuf_move_notify_no_resource\ndynamic live selftest will fail with below stack.\n\nBUG: kernel NULL pointer dereference, address: 0000000000000010\nRIP: 0010:xe_evict_flags+0xf4/0x140 [xe]\nCall Trace:\n <TASK>\n xe_bo_evict+0x40/0xa0 [xe]\n ? ttm_bo_pipeline_gutting+0x71/0x180 [ttm]\n xe_test_dmabuf_move_notify_no_resource+0x182/0x440 [xe]\n xe_dma_buf_kunit+0x387/0x580 [xe]\n\nv2: Add Fixes tag and failure info in commit text (Matt Brost)\n\n(cherry picked from commit dbcfaac6331f1fcb0c2fe3ad3e9adb1e5d43ec0c)","severity":"unknown","score":null,"published":"2026-10-28T10:36:03.274Z","modified":"2026-10-28T10:36:03.274Z","withdrawn":false,"knownExploited":false,"affected":[],"references":["https://git.kernel.org/stable/c/6046bb9cb2859e3d9bf939e4d6527f3827e1096f","https://git.kernel.org/stable/c/b6499d19ade1f1e4a1e6b739abc8c815297c98b8","https://git.kernel.org/stable/c/448e76cbdc6652ccd3ba337b7a6e1f028859f2ed"],"sources":[{"name":"CVE","id":"CVE-2026-99209","modified":"2026-10-28T10:36:03.274Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-99209"}],"assessments":[],"sourceAffected":[],"kev":{"status":"not-listed","checkedAt":"2026-10-28T21:20:33.373Z"},"coverage":[{"source":"NVD","status":"not-checked"},{"source":"GHSA","status":"not-checked"},{"source":"EUVD","status":"not-checked"},{"source":"EPSS","status":"not-checked"}],"evidence":[]}