dma-fence: Fix potential tracepoint null pointer dereferences
In the Linux kernel, the following vulnerability has been resolved: dma-fence: Fix potential tracepoint null pointer dereferences Trace_dma_fence_signaled, trace_dma_fence_wait_end and trace_dma_fence_destroy can all currently dereference a null fence->ops pointer after it has been reset on fence signalling. Lets use the safe string getters for most tracepoints to avoid this class of a problem, while for the signal tracepoint we move it to before ops are cleared to avoid losing the driver and timeline name information. Apart from moving it we also need to add a new tracepoint class to bypass the safe name getters since the signaled bit is already set. For dma_fence_init we also need to use the new tracepoint class since the rcu read lock is not held there, and we can do the same for the enable signaling since there we are certain the fence cannot be signaled while we are holding the lock and have even validated the fence->ops.
- Products
- Kernel
- Affected versions
- Not specified
- Fixed versions
- 7.1.5
- CVEs
- CVE-2026-74418
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 5 Nov 2026, 06:11 UTC · Revision 1
Source evidence
dma-fence: Fix potential tracepoint null pointer dereferences
core-osv · Original sourcePublished 15 Aug 2026, 05:59 UTC
In the Linux kernel, the following vulnerability has been resolved: dma-fence: Fix potential tracepoint null pointer dereferences Trace_dma_fence_signaled, trace_dma_fence_wait_end and trace_dma_fence_destroy can all currently dereference a null fence->ops pointer after it has been reset on fence signalling. Lets use the safe string getters for most tracepoints to avoid this class of a problem, while for the signal tracepoint we move it to before ops are cleared to avoid losing the driver and timeline name information. Apart from moving it we also need to add a new tracepoint class to bypass the safe name getters since the signaled bit is already set. For dma_fence_init we also need to use the new tracepoint class since the rcu read lock is not held there, and we can do the same for the enable signaling since there we are certain the fence cannot be signaled while we are holding the lock and have even validated the fence->ops.
osv:CVE-2026-74418
Kernel
Fixed versions: 7.1.5
Complete source record
{
"id": "4a07dec8272e1aca6b76a5fe0a70703719702104c8d43f66d63dcb681f525f48",
"url": "https://osv.dev/vulnerability/CVE-2026-74418",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "dma-fence: Fix potential tracepoint null pointer dereferences",
"summary": "In the Linux kernel, the following vulnerability has been resolved: dma-fence: Fix potential tracepoint null pointer dereferences Trace_dma_fence_signaled, trace_dma_fence_wait_end and trace_dma_fence_destroy can all currently dereference a null fence->ops pointer after it has been reset on fence signalling. Lets use the safe string getters for most tracepoints to avoid this class of a problem, while for the signal tracepoint we move it to before ops are cleared to avoid losing the driver and timeline name information. Apart from moving it we also need to add a new tracepoint class to bypass the safe name getters since the signaled bit is already set. For dma_fence_init we also need to use the new tracepoint class since the rcu read lock is not held there, and we can do the same for the enable signaling since there we are certain the fence cannot be signaled while we are holding the lock and have even validated the fence->ops.",
"evidence": "osv:CVE-2026-74418",
"products": [
{
"name": {
"value": "Kernel",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "7.1.5",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "CVE-2026-74418",
"aliases": [
"CVE-2026-74418"
],
"affected": [
{
"ranges": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "541c8f2468b933acc5d129e84bd264923675a66e"
},
{
"fixed": "4e01fc9a5bc49b04fad403ffa71299b35e132ca8"
},
{
"fixed": "e94b9f01543cc6a83538c2c2cc645a424d3015ca"
}
]
}
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74418.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "7.1.0"
},
{
"fixed": "7.1.5"
}
]
}
],
"package": {
"name": "Kernel",
"ecosystem": "Linux"
},
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-74418.json"
}
}
],
"modified": "2026-10-28T02:30:42.996590359Z",
"provider": "osv",
"references": [
"https://git.kernel.org/stable/c/4e01fc9a5bc49b04fad403ffa71299b35e132ca8",
"https://git.kernel.org/stable/c/e94b9f01543cc6a83538c2c2cc645a424d3015ca",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74418.json",
"https://nvd.nist.gov/vuln/detail/CVE-2026-74418",
"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
],
"provider_metadata": {
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74418.json"
}
},
"related_cves": [
{
"value": "CVE-2026-74418",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 511008,
"published_at": "2026-08-15T05:59:23.44+00:00"
}