CVE-2026-93180 (GCVE-0-2026-93180)
Vulnerability from cvelistv5 – Published: 2026-09-17 16:12 – Updated: 2026-09-17 16:12
VLAI
EPSS
VEX
Title
drm/panthor: Fix NPD issue on partial unmap of an evicted BO
Summary
In the Linux kernel, the following vulnerability has been resolved:
drm/panthor: Fix NPD issue on partial unmap of an evicted BO
This commit fixes the NULL pointer dereference issue that would have
happened on the split of GPU mapping due to partial unmap of an evicted
BO. There is a logic to handle the partial unmap of huge pages when the
GPU mapping is split. That logic was not being completely skipped for
the VMA of an evicted BO and that resulted in a NPD possibility for the
'bo->backing.pages' pointer, which is set to NULL when pages of a
BO are released on eviction.
Following dump was seen when a partial unmap was exercised for an
evicted BO.
Unable to handle kernel paging request at virtual address 0000000000002000
Mem abort info:
ESR = 0x0000000096000004
EC = 0x25: DABT (current EL), IL = 32 bits
SET = 0, FnV = 0
EA = 0, S1PTW = 0
FSC = 0x04: level 0 translation fault
Data abort info:
ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000
CM = 0, WnR = 0, TnD = 0, TagAccess = 0
GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
user pgtable: 4k pages, 48-bit VAs, pgdp=00000008842e8000
[0000000000002000] pgd=0000000000000000, p4d=0000000000000000
Internal error: Oops: 0000000096000004 [#1] SMP
<snip>
pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
pc : iova_mapped_as_huge_page+0x20/0x68 [panthor]
lr : panthor_gpuva_sm_step_remap+0x39c/0x498 [panthor]
sp : ffff800086193920
x29: ffff800086193920 x28: ffff800086193a18 x27: ffff800086193b80
x26: 0000000000400000 x25: 0000000000810000 x24: 0000000000400000
x23: ffff000808af1800 x22: 0000000000a00000 x21: ffff800086193a00
x20: ffff000806fd3f00 x19: 0000000000410000 x18: 00000000ffffffff
x17: 0000000000000000 x16: 0000000000000000 x15: ffff800083ce2d83
x14: 0000000000000000 x13: 3120646574636976 x12: 6520303030303138
x11: 2d30303030313420 x10: ffff8000836e6c80 x9 : ffff80007bfc889c
x8 : 3fffffffffffefff x7 : ffff8000836e6c80 x6 : 0000000000000000
x5 : ffff00097ef19088 x4 : 0000000000000000 x3 : 0000000000000000
x2 : 0000000000010000 x1 : 0000000000000400 x0 : 0000000000000000
Call trace:
iova_mapped_as_huge_page+0x20/0x68 [panthor] (P)
op_remap_cb.isra.0+0x70/0xb0
__drm_gpuvm_sm_unmap+0xf8/0x1c0
drm_gpuvm_sm_unmap+0x40/0x60
panthor_vm_exec_op+0xa0/0x168 [panthor]
panthor_vm_bind_exec_sync_op+0x8c/0xb8 [panthor]
panthor_ioctl_vm_bind+0xbc/0x170 [panthor]
drm_ioctl_kernel+0xc0/0x140
drm_ioctl+0x20c/0x500
__arm64_sys_ioctl+0xb4/0x118
invoke_syscall+0x5c/0x120
el0_svc_common.constprop.0+0x48/0xf8
do_el0_svc+0x28/0x40
el0_svc+0x38/0x128
el0t_64_sync_handler+0xa0/0xe8
el0t_64_sync+0x198/0x1a0
Code: 8b030021 cb020021 f940b800 d34cfc21 (f8617801)
---[ end trace 0000000000000000 ]---
v2: Fix indentation
Severity
No CVSS data available.
Assigner
References
Impacted products
2 products
| Vendor | Product | Version | CPE status | |
|---|---|---|---|---|
| Linux | Linux |
Affected:
8e7460eac786c72f48c4e04ce9be692b939428ce , < 23d41b2e68765ad7095b1424f70c21c281f8a600
(git)
Affected: 8e7460eac786c72f48c4e04ce9be692b939428ce , < 5fb40edc7439b99d001988da63485ca51dbd3550 (git) |
guessed | |
| Linux | Linux |
Affected:
7.0
Unaffected: 0 , < 7.0 (semver) Unaffected: 7.2.6 , ≤ 7.2.* (semver) Unaffected: 7.3-rc1 , ≤ * (original_commit_for_fix) |
guessed |
{
"containers": {
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/gpu/drm/panthor/panthor_mmu.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "23d41b2e68765ad7095b1424f70c21c281f8a600",
"status": "affected",
"version": "8e7460eac786c72f48c4e04ce9be692b939428ce",
"versionType": "git"
},
{
"lessThan": "5fb40edc7439b99d001988da63485ca51dbd3550",
"status": "affected",
"version": "8e7460eac786c72f48c4e04ce9be692b939428ce",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/gpu/drm/panthor/panthor_mmu.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "7.0"
},
{
"lessThan": "7.0",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.2.*",
"status": "unaffected",
"version": "7.2.6",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.3-rc1",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2.6",
"versionStartIncluding": "7.0",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.3-rc1",
"versionStartIncluding": "7.0",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/panthor: Fix NPD issue on partial unmap of an evicted BO\n\nThis commit fixes the NULL pointer dereference issue that would have\nhappened on the split of GPU mapping due to partial unmap of an evicted\nBO. There is a logic to handle the partial unmap of huge pages when the\nGPU mapping is split. That logic was not being completely skipped for\nthe VMA of an evicted BO and that resulted in a NPD possibility for the\n\u0027bo-\u003ebacking.pages\u0027 pointer, which is set to NULL when pages of a\nBO are released on eviction.\n\nFollowing dump was seen when a partial unmap was exercised for an\nevicted BO.\nUnable to handle kernel paging request at virtual address 0000000000002000\nMem abort info:\n ESR = 0x0000000096000004\n EC = 0x25: DABT (current EL), IL = 32 bits\n SET = 0, FnV = 0\n EA = 0, S1PTW = 0\n FSC = 0x04: level 0 translation fault\nData abort info:\n ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000\n CM = 0, WnR = 0, TnD = 0, TagAccess = 0\n GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0\nuser pgtable: 4k pages, 48-bit VAs, pgdp=00000008842e8000\n[0000000000002000] pgd=0000000000000000, p4d=0000000000000000\nInternal error: Oops: 0000000096000004 [#1] SMP\n\u003csnip\u003e\npstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)\npc : iova_mapped_as_huge_page+0x20/0x68 [panthor]\nlr : panthor_gpuva_sm_step_remap+0x39c/0x498 [panthor]\nsp : ffff800086193920\nx29: ffff800086193920 x28: ffff800086193a18 x27: ffff800086193b80\nx26: 0000000000400000 x25: 0000000000810000 x24: 0000000000400000\nx23: ffff000808af1800 x22: 0000000000a00000 x21: ffff800086193a00\nx20: ffff000806fd3f00 x19: 0000000000410000 x18: 00000000ffffffff\nx17: 0000000000000000 x16: 0000000000000000 x15: ffff800083ce2d83\nx14: 0000000000000000 x13: 3120646574636976 x12: 6520303030303138\nx11: 2d30303030313420 x10: ffff8000836e6c80 x9 : ffff80007bfc889c\nx8 : 3fffffffffffefff x7 : ffff8000836e6c80 x6 : 0000000000000000\nx5 : ffff00097ef19088 x4 : 0000000000000000 x3 : 0000000000000000\nx2 : 0000000000010000 x1 : 0000000000000400 x0 : 0000000000000000\nCall trace:\n iova_mapped_as_huge_page+0x20/0x68 [panthor] (P)\n op_remap_cb.isra.0+0x70/0xb0\n __drm_gpuvm_sm_unmap+0xf8/0x1c0\n drm_gpuvm_sm_unmap+0x40/0x60\n panthor_vm_exec_op+0xa0/0x168 [panthor]\n panthor_vm_bind_exec_sync_op+0x8c/0xb8 [panthor]\n panthor_ioctl_vm_bind+0xbc/0x170 [panthor]\n drm_ioctl_kernel+0xc0/0x140\n drm_ioctl+0x20c/0x500\n __arm64_sys_ioctl+0xb4/0x118\n invoke_syscall+0x5c/0x120\n el0_svc_common.constprop.0+0x48/0xf8\n do_el0_svc+0x28/0x40\n el0_svc+0x38/0x128\n el0t_64_sync_handler+0xa0/0xe8\n el0t_64_sync+0x198/0x1a0\nCode: 8b030021 cb020021 f940b800 d34cfc21 (f8617801)\n---[ end trace 0000000000000000 ]---\n\nv2: Fix indentation"
}
],
"providerMetadata": {
"dateUpdated": "2026-09-17T16:12:08.005Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/23d41b2e68765ad7095b1424f70c21c281f8a600"
},
{
"url": "https://git.kernel.org/stable/c/5fb40edc7439b99d001988da63485ca51dbd3550"
}
],
"title": "drm/panthor: Fix NPD issue on partial unmap of an evicted BO",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-93180",
"datePublished": "2026-09-17T16:12:08.005Z",
"dateReserved": "2026-09-17T16:02:15.091Z",
"dateUpdated": "2026-09-17T16:12:08.005Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"vulnerability-lookup:meta": {
"nvd": "{\"cve\":{\"id\":\"CVE-2026-93180\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-09-17T17:18:13.880\",\"lastModified\":\"2026-09-17T17:18:13.880\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ndrm/panthor: Fix NPD issue on partial unmap of an evicted BO\\n\\nThis commit fixes the NULL pointer dereference issue that would have\\nhappened on the split of GPU mapping due to partial unmap of an evicted\\nBO. There is a logic to handle the partial unmap of huge pages when the\\nGPU mapping is split. That logic was not being completely skipped for\\nthe VMA of an evicted BO and that resulted in a NPD possibility for the\\n\u0027bo-\u003ebacking.pages\u0027 pointer, which is set to NULL when pages of a\\nBO are released on eviction.\\n\\nFollowing dump was seen when a partial unmap was exercised for an\\nevicted BO.\\nUnable to handle kernel paging request at virtual address 0000000000002000\\nMem abort info:\\n ESR = 0x0000000096000004\\n EC = 0x25: DABT (current EL), IL = 32 bits\\n SET = 0, FnV = 0\\n EA = 0, S1PTW = 0\\n FSC = 0x04: level 0 translation fault\\nData abort info:\\n ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000\\n CM = 0, WnR = 0, TnD = 0, TagAccess = 0\\n GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0\\nuser pgtable: 4k pages, 48-bit VAs, pgdp=00000008842e8000\\n[0000000000002000] pgd=0000000000000000, p4d=0000000000000000\\nInternal error: Oops: 0000000096000004 [#1] SMP\\n\u003csnip\u003e\\npstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)\\npc : iova_mapped_as_huge_page+0x20/0x68 [panthor]\\nlr : panthor_gpuva_sm_step_remap+0x39c/0x498 [panthor]\\nsp : ffff800086193920\\nx29: ffff800086193920 x28: ffff800086193a18 x27: ffff800086193b80\\nx26: 0000000000400000 x25: 0000000000810000 x24: 0000000000400000\\nx23: ffff000808af1800 x22: 0000000000a00000 x21: ffff800086193a00\\nx20: ffff000806fd3f00 x19: 0000000000410000 x18: 00000000ffffffff\\nx17: 0000000000000000 x16: 0000000000000000 x15: ffff800083ce2d83\\nx14: 0000000000000000 x13: 3120646574636976 x12: 6520303030303138\\nx11: 2d30303030313420 x10: ffff8000836e6c80 x9 : ffff80007bfc889c\\nx8 : 3fffffffffffefff x7 : ffff8000836e6c80 x6 : 0000000000000000\\nx5 : ffff00097ef19088 x4 : 0000000000000000 x3 : 0000000000000000\\nx2 : 0000000000010000 x1 : 0000000000000400 x0 : 0000000000000000\\nCall trace:\\n iova_mapped_as_huge_page+0x20/0x68 [panthor] (P)\\n op_remap_cb.isra.0+0x70/0xb0\\n __drm_gpuvm_sm_unmap+0xf8/0x1c0\\n drm_gpuvm_sm_unmap+0x40/0x60\\n panthor_vm_exec_op+0xa0/0x168 [panthor]\\n panthor_vm_bind_exec_sync_op+0x8c/0xb8 [panthor]\\n panthor_ioctl_vm_bind+0xbc/0x170 [panthor]\\n drm_ioctl_kernel+0xc0/0x140\\n drm_ioctl+0x20c/0x500\\n __arm64_sys_ioctl+0xb4/0x118\\n invoke_syscall+0x5c/0x120\\n el0_svc_common.constprop.0+0x48/0xf8\\n do_el0_svc+0x28/0x40\\n el0_svc+0x38/0x128\\n el0t_64_sync_handler+0xa0/0xe8\\n el0t_64_sync+0x198/0x1a0\\nCode: 8b030021 cb020021 f940b800 d34cfc21 (f8617801)\\n---[ end trace 0000000000000000 ]---\\n\\nv2: Fix indentation\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/gpu/drm/panthor/panthor_mmu.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"8e7460eac786c72f48c4e04ce9be692b939428ce\",\"lessThan\":\"23d41b2e68765ad7095b1424f70c21c281f8a600\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"8e7460eac786c72f48c4e04ce9be692b939428ce\",\"lessThan\":\"5fb40edc7439b99d001988da63485ca51dbd3550\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/gpu/drm/panthor/panthor_mmu.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"7.0\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"7.0\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2.6\",\"lessThanOrEqual\":\"7.2.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.3-rc1\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/23d41b2e68765ad7095b1424f70c21c281f8a600\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/5fb40edc7439b99d001988da63485ca51dbd3550\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
}
}
Loading…
Loading…
Experimental. This forecast is provided for visualization only and may change without notice. Do not use it for operational decisions.
Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
The MITRE ATT&CK techniques below are AI-generated suggestions, inferred from the description of the
vulnerability by the CIRCL/vulnerability-attack-technique-classification-roberta-base
model, served locally by ML-Gateway.
They have not been verified by an analyst and are provided for guidance only.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Loading…
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.
Loading…