{"api_version":"1","generated_at":"2026-08-22T16:59:49+00:00","cve":"CVE-2026-72494","urls":{"html":"https://cve.report/CVE-2026-72494","api":"https://cve.report/api/cve/CVE-2026-72494.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-72494","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-72494"},"summary":{"title":"RDMA/irdma: Replace waitqueue and flag with completion","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/irdma: Replace waitqueue and flag with completion\n\nThe driver previously used a waitqueue along with an explicit\nrequest_done flag, but without proper barriers around request_done.\n\nAn earlier patch by Gui-Dong Han <hanguidong02@gmail.com> attempted\nto fix this by adding the missing memory barriers. Rather than\nadding the barriers, this patch replaces the waitqueue+flag with\na completion, which is designed for this exact purpose.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-08-15 06:22:23","updated_at":"2026-08-17 06:19:17"},"problem_types":[],"metrics":[{"version":"3.1","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","score":"9.8","severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","baseScore":9.8,"baseSeverity":"CRITICAL","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"9.8","severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","data":{"baseScore":9.8,"baseSeverity":"CRITICAL","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","version":"3.1"}}],"references":[{"url":"https://git.kernel.org/stable/c/d9c8c45e6d2f438a3c8e643ae78b59454fa0fadd","name":"https://git.kernel.org/stable/c/d9c8c45e6d2f438a3c8e643ae78b59454fa0fadd","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/bde37aed0724c0139dea177f3aae8d989b6babb1","name":"https://git.kernel.org/stable/c/bde37aed0724c0139dea177f3aae8d989b6babb1","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-72494","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-72494","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 44d9e52977a1b90b0db1c7f8b197c218e9226520 bde37aed0724c0139dea177f3aae8d989b6babb1 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 44d9e52977a1b90b0db1c7f8b197c218e9226520 d9c8c45e6d2f438a3c8e643ae78b59454fa0fadd git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.14","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.14 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.1.5 7.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.2 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"72494","cve":"CVE-2026-72494","epss":"0.004070000","percentile":"0.338700000","score_date":"2026-08-17","updated_at":"2026-08-18 00:11:47"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["drivers/infiniband/hw/irdma/hw.c","drivers/infiniband/hw/irdma/main.h","drivers/infiniband/hw/irdma/utils.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"bde37aed0724c0139dea177f3aae8d989b6babb1","status":"affected","version":"44d9e52977a1b90b0db1c7f8b197c218e9226520","versionType":"git"},{"lessThan":"d9c8c45e6d2f438a3c8e643ae78b59454fa0fadd","status":"affected","version":"44d9e52977a1b90b0db1c7f8b197c218e9226520","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["drivers/infiniband/hw/irdma/hw.c","drivers/infiniband/hw/irdma/main.h","drivers/infiniband/hw/irdma/utils.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"5.14"},{"lessThan":"5.14","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"7.1.*","status":"unaffected","version":"7.1.5","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.2","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.1.5","versionStartIncluding":"5.14","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.2","versionStartIncluding":"5.14","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/irdma: Replace waitqueue and flag with completion\n\nThe driver previously used a waitqueue along with an explicit\nrequest_done flag, but without proper barriers around request_done.\n\nAn earlier patch by Gui-Dong Han <hanguidong02@gmail.com> attempted\nto fix this by adding the missing memory barriers. Rather than\nadding the barriers, this patch replaces the waitqueue+flag with\na completion, which is designed for this exact purpose."}],"metrics":[{"cvssV3_1":{"baseScore":9.8,"baseSeverity":"CRITICAL","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","version":"3.1"},"scenarios":[{"lang":"en","value":"AV:N - Intel irdma CQP completion/wait synchronization is exercised from remote iWARP/RoCE connection management (SYN/listener/IEQ/AEQ) and deferred-completion events, not only local ibverbs; network peers drive the completion side of the race on internet-facing RDMA/NFS/SMB-Direct servers.\nAC:L - Attacker controls both sides by flooding concurrent connections/CQP ops remotely or via concurrent RDMA verbs locally; missing release/acquire ordering on request_done vs compl_info is triggerable at high operation rates without luck-dependent layout.\nPR:N - Remote CM and packet-processing paths issue/wait on CQP before MPA/application auth; local exploitation needs only standard unprivileged /dev/infiniband/uverbs* access (0666 under typical rdma-core udev rules), not init-namespace capabilities.\nUI:N - Exploitation needs only attacker-driven network or verbs traffic against an already-bound RDMA device/listener; no additional victim user action at attack time beyond normal server role.\nS:U - Impact stays within kernel/driver security domain (CQP request objects, NIC PF reset); no VM escape or cross-authority boundary.\nC:H - Without proper barriers the waiter can observe request_done before compl_info stores, return success with stale op_ret_val/error, and recycle the cqp_request while hardware still references scratch → UAF/read primitives.\nI:H - Premature recycle/double-put of dynamic cqp_requests enables attacker-influenced heap reuse; stale callbacks on reused objects and invalid kfree paths provide kernel write/control-flow corruption primitives.\nA:H - Lost request_done causes CQP timeout → ice_rdma_request_reset PF reset; wrong completion state can leave mod_qp_waitq in uninterruptible wait; UAF/panic paths cause kernel crash/hang."}]}],"providerMetadata":{"dateUpdated":"2026-08-17T05:44:55.551Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/bde37aed0724c0139dea177f3aae8d989b6babb1"},{"url":"https://git.kernel.org/stable/c/d9c8c45e6d2f438a3c8e643ae78b59454fa0fadd"}],"title":"RDMA/irdma: Replace waitqueue and flag with completion","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-72494","datePublished":"2026-08-15T05:57:28.280Z","dateReserved":"2026-08-09T03:40:39.937Z","dateUpdated":"2026-08-17T05:44:55.551Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-08-15 06:22:23","lastModifiedDate":"2026-08-17 06:19:17","problem_types":[],"metrics":{"cvssMetricV31":[{"source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","baseScore":9.8,"baseSeverity":"CRITICAL","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":3.9,"impactScore":5.9}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"72494","Ordinal":"1","Title":"RDMA/irdma: Replace waitqueue and flag with completion","CVE":"CVE-2026-72494","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"72494","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/irdma: Replace waitqueue and flag with completion\n\nThe driver previously used a waitqueue along with an explicit\nrequest_done flag, but without proper barriers around request_done.\n\nAn earlier patch by Gui-Dong Han <hanguidong02@gmail.com> attempted\nto fix this by adding the missing memory barriers. Rather than\nadding the barriers, this patch replaces the waitqueue+flag with\na completion, which is designed for this exact purpose.","Type":"Description","Title":"RDMA/irdma: Replace waitqueue and flag with completion"}]}}}