{
    "dataType": "CVE_RECORD",
    "dataVersion": "5.2",
    "cveMetadata": {
        "cveId": "CVE-2026-74397",
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "state": "PUBLISHED",
        "assignerShortName": "Linux",
        "dateReserved": "2026-08-15T05:44:03.891Z",
        "datePublished": "2026-08-15T05:59:09.329Z",
        "dateUpdated": "2026-08-17T05:46:42.049Z"
    },
    "containers": {
        "cna": {
            "providerMetadata": {
                "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
                "shortName": "Linux",
                "dateUpdated": "2026-08-17T05:46:42.049Z"
            },
            "descriptions": [
                {
                    "lang": "en",
                    "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nIB/mlx5: Fix transport-domain rollback and initialize lb mutex earlier\n\nmlx5_ib_alloc_transport_domain() allocates a transport domain and then\nmay fail in mlx5_ib_enable_lb(). In that case, the allocated TD is leaked.\n\nFix this by deallocating the TD when mlx5_ib_enable_lb() returns an\nerror. Also return 0 explicitly in the no-loopback-capability success\nbranch, and move dev->lb.mutex initialization to mlx5_ib_stage_init_init()."
                }
            ],
            "metrics": [
                {
                    "cvssV3_1": {
                        "version": "3.1",
                        "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                        "baseScore": 7.8,
                        "baseSeverity": "HIGH"
                    },
                    "scenarios": [
                        {
                            "lang": "en",
                            "value": "AV:L - Reachable only via local ibverbs syscalls (ioctl/write) on /dev/infiniband/uverbsX through mlx5_ib_alloc_ucontext() and mlx5_ib_create_qp(); not via remote RoCE/IB packet handling.\nAC:L - An attacker can reliably open uverbs and create raw-packet QPs with self-loopback flags to invoke mlx5_ib_enable_lb(); TD leaks are repeatable by looping alloc_ucontext and can force enable_lb failure via memory pressure or firmware errors.\nPR:L - Kernel creates uverbs device nodes as world-accessible (0666); alloc_ucontext and create_qp require no real root/CAP_SYS_ADMIN, only local access to the mlx5 RDMA character device on hosts with the hardware.\nUI:N - Exploitation needs only attacker-driven ibverbs calls; no victim interaction such as mounting filesystems, clicking links, or opening files is required.\nS:U - Impact stays within the host kernel mlx5 RDMA driver scope; this is not a VM escape, IOMMU/DMA boundary bypass, or other cross-security-authority compromise per kernel CVSS guidance.\nC:H - Locking an uninitialized dev->lb.mutex in mlx5_ib_enable_lb()/disable_lb is undefined behavior that can corrupt kernel memory and be leveraged for arbitrary kernel memory disclosure.\nI:H - Uninitialized mutex use during ucontext transport-domain setup or raw-packet QP creation can corrupt adjacent kernel structures and enable arbitrary write or control-flow hijack primitives.\nA:H - Invalid mutex operations can kernel panic/oops; repeated alloc_ucontext without TD rollback on mlx5_ib_enable_lb() failure exhausts transport domains and denies further RDMA context/QP creation (DoS)."
                        }
                    ]
                }
            ],
            "affected": [
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "unaffected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/infiniband/hw/mlx5/main.c"
                    ],
                    "versions": [
                        {
                            "version": "146d2f1af3245a10b13eef263687e54f4e253d1d",
                            "lessThan": "2c3b2667dad69d56774b79db763acb3a1bee0fc0",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "146d2f1af3245a10b13eef263687e54f4e253d1d",
                            "lessThan": "37fc3cc0f924fd8d0f0cf87b92672dec75a32e57",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "146d2f1af3245a10b13eef263687e54f4e253d1d",
                            "lessThan": "65e344925fa30abf50c8de8c150b397715fa2066",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "146d2f1af3245a10b13eef263687e54f4e253d1d",
                            "lessThan": "f88e12c95fc19f719e06ca1e9eb20fdad68ef61a",
                            "status": "affected",
                            "versionType": "git"
                        },
                        {
                            "version": "146d2f1af3245a10b13eef263687e54f4e253d1d",
                            "lessThan": "e79389115b9d27287ff6230a9750675106ed7668",
                            "status": "affected",
                            "versionType": "git"
                        }
                    ]
                },
                {
                    "product": "Linux",
                    "vendor": "Linux",
                    "defaultStatus": "affected",
                    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                    "programFiles": [
                        "drivers/infiniband/hw/mlx5/main.c"
                    ],
                    "versions": [
                        {
                            "version": "4.5",
                            "status": "affected"
                        },
                        {
                            "version": "0",
                            "lessThan": "4.5",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.6.145",
                            "lessThanOrEqual": "6.6.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.12.97",
                            "lessThanOrEqual": "6.12.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "6.18.40",
                            "lessThanOrEqual": "6.18.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "7.1.5",
                            "lessThanOrEqual": "7.1.*",
                            "status": "unaffected",
                            "versionType": "semver"
                        },
                        {
                            "version": "7.2",
                            "lessThanOrEqual": "*",
                            "status": "unaffected",
                            "versionType": "original_commit_for_fix"
                        }
                    ]
                }
            ],
            "cpeApplicability": [
                {
                    "nodes": [
                        {
                            "operator": "OR",
                            "negate": false,
                            "cpeMatch": [
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "4.5",
                                    "versionEndExcluding": "6.6.145"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "4.5",
                                    "versionEndExcluding": "6.12.97"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "4.5",
                                    "versionEndExcluding": "6.18.40"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "4.5",
                                    "versionEndExcluding": "7.1.5"
                                },
                                {
                                    "vulnerable": true,
                                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                                    "versionStartIncluding": "4.5",
                                    "versionEndExcluding": "7.2"
                                }
                            ]
                        }
                    ]
                }
            ],
            "references": [
                {
                    "url": "https://git.kernel.org/stable/c/2c3b2667dad69d56774b79db763acb3a1bee0fc0"
                },
                {
                    "url": "https://git.kernel.org/stable/c/37fc3cc0f924fd8d0f0cf87b92672dec75a32e57"
                },
                {
                    "url": "https://git.kernel.org/stable/c/65e344925fa30abf50c8de8c150b397715fa2066"
                },
                {
                    "url": "https://git.kernel.org/stable/c/f88e12c95fc19f719e06ca1e9eb20fdad68ef61a"
                },
                {
                    "url": "https://git.kernel.org/stable/c/e79389115b9d27287ff6230a9750675106ed7668"
                }
            ],
            "title": "IB/mlx5: Fix transport-domain rollback and initialize lb mutex earlier",
            "x_generator": {
                "engine": "bippy-1.2.0"
            }
        }
    }
}