iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping()
In the Linux kernel, the following vulnerability has been resolved: iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping() After commit e3beca48a45b ("irqdomain/treewide: Keep firmware node unconditionally allocated"). For tear down scenario, fn is only freed after fail to allocate ir_domain, though it also should be freed in case dmar_enable_qi returns error. Besides free fn, irq_domain and ir_msi_domain need to be removed as well if intel_setup_irq_remapping fails to enable queued invalidation. Improve the rewinding path by add out_free_ir_domain and out_free_fwnode lables per Baolu's suggestion.
- Products
- Kernel
- Affected versions
- Not specified
- Fixed versions
- 4.14.265, 4.19.228, 5.10.99, 5.15.22, 5.16.8, 5.4.178
- CVEs
- CVE-2022-48724
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 7 Nov 2026, 03:24 UTC · Revision 1
Source evidence
iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping()
core-osv · Original sourcePublished 20 Jun 2024, 11:13 UTC
In the Linux kernel, the following vulnerability has been resolved: iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping() After commit e3beca48a45b ("irqdomain/treewide: Keep firmware node unconditionally allocated"). For tear down scenario, fn is only freed after fail to allocate ir_domain, though it also should be freed in case dmar_enable_qi returns error. Besides free fn, irq_domain and ir_msi_domain need to be removed as well if intel_setup_irq_remapping fails to enable queued invalidation. Improve the rewinding path by add out_free_ir_domain and out_free_fwnode lables per Baolu's suggestion.
osv:CVE-2022-48724
Kernel
Fixed versions: 4.14.265, 4.19.228, 5.4.178, 5.10.99, 5.15.22, 5.16.8
Complete source record
{
"id": "07d6a684cd68dfd0ef8686e5eba53a95156312e3442cb7b745eb16e71690e215",
"url": "https://osv.dev/vulnerability/CVE-2022-48724",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping()",
"summary": "In the Linux kernel, the following vulnerability has been resolved: iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping() After commit e3beca48a45b (\"irqdomain/treewide: Keep firmware node unconditionally allocated\"). For tear down scenario, fn is only freed after fail to allocate ir_domain, though it also should be freed in case dmar_enable_qi returns error. Besides free fn, irq_domain and ir_msi_domain need to be removed as well if intel_setup_irq_remapping fails to enable queued invalidation. Improve the rewinding path by add out_free_ir_domain and out_free_fwnode lables per Baolu's suggestion.",
"evidence": "osv:CVE-2022-48724",
"products": [
{
"name": {
"value": "Kernel",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "4.14.265",
"evidence": "/affected/1/ranges"
},
{
"value": "4.19.228",
"evidence": "/affected/1/ranges"
},
{
"value": "5.4.178",
"evidence": "/affected/1/ranges"
},
{
"value": "5.10.99",
"evidence": "/affected/1/ranges"
},
{
"value": "5.15.22",
"evidence": "/affected/1/ranges"
},
{
"value": "5.16.8",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "CVE-2022-48724",
"aliases": [
"CVE-2022-48724"
],
"affected": [
{
"ranges": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "03992c88d71ba79d956f2ed54e370e630b8750f4"
},
{
"fixed": "a0c685ba99961b1dd894b2e470e692a539770f6d"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "c0c489e5430530a7021f4c889cd5931597e4b200"
},
{
"fixed": "a31cb1f0fb6caf46ffe88c41252b6b7a4ee062d9"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "36f7355545725c5e9400520ae33e6ee16cf78c0e"
},
{
"fixed": "5c43d46daa0d2928234dd2792ebebc35d29ee2d1"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "e3beca48a45b5e0e6e6a4e0124276b8248dcc9bb"
},
{
"fixed": "9d9995b0371e4e8c18d4f955479e5d47efe7b2d4"
},
{
"fixed": "336d096b62bdc673e852b6b80d5072d7888ce85d"
},
{
"fixed": "b62eceb5f8f08815fe3f945fc55bbf997c344ecd"
},
{
"fixed": "99e675d473eb8cf2deac1376a0f840222fc1adcf"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "4.14.190"
},
{
"fixed": "4.14.265"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "4.19.135"
},
{
"fixed": "4.19.228"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "5.4.54"
},
{
"fixed": "5.4.178"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "5.7.11"
},
{
"fixed": "5.8"
}
]
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "b4198ecddb87cd955aa9e024dd656af5ceaf6196"
}
]
}
],
"versions": [
"v4.14.264",
"v4.14.263",
"v4.14.262",
"v4.14.261",
"v4.14.260",
"v4.14.259",
"v4.14.258",
"v4.14.257",
"v4.14.256",
"v4.14.255",
"v4.14.254",
"v4.14.253",
"v4.14.252",
"v4.14.251",
"v4.14.250",
"v4.14.249",
"v4.14.248",
"v4.14.247",
"v4.14.246",
"v4.14.245",
"v4.14.244",
"v4.14.243",
"v4.14.242",
"v4.14.241",
"v4.14.240",
"v4.14.239",
"v4.14.238",
"v4.14.237",
"v4.14.236",
"v4.14.235",
"v4.14.234",
"v4.14.233",
"v4.14.232",
"v4.14.231",
"v4.14.230",
"v4.14.229",
"v4.14.228",
"v4.14.227",
"v4.14.226",
"v4.14.225",
"v4.14.224",
"v4.14.223",
"v4.14.222",
"v4.14.221",
"v4.14.220",
"v4.14.219",
"v4.14.218",
"v4.14.217",
"v4.14.216",
"v4.14.215",
"v4.14.214",
"v4.14.213",
"v4.14.212",
"v4.14.211",
"v4.14.210",
"v4.14.209",
"v4.14.208",
"v4.14.207",
"v4.14.206",
"v4.14.205",
"v4.14.204",
"v4.14.203",
"v4.14.202",
"v4.14.201",
"v4.14.200",
"v4.14.199",
"v4.14.198",
"v4.14.197",
"v4.14.196",
"v4.14.195",
"v4.14.194",
"v4.14.193",
"v4.14.192",
"v4.14.191",
"v4.14.190",
"v4.19.227",
"v4.19.226",
"v4.19.225",
"v4.19.224",
"v4.19.223",
"v4.19.222",
"v4.19.221",
"v4.19.220",
"v4.19.219",
"v4.19.218",
"v4.19.217",
"v4.19.216",
"v4.19.215",
"v4.19.214",
"v4.19.213",
"v4.19.212",
"v4.19.211",
"v4.19.210",
"v4.19.209",
"v4.19.208",
"v4.19.207",
"v4.19.206",
"v4.19.205",
"v4.19.204",
"v4.19.203",
"v4.19.202",
"v4.19.201",
"v4.19.200",
"v4.19.199",
"v4.19.198",
"v4.19.197",
"v4.19.196",
"v4.19.195",
"v4.19.194",
"v4.19.193",
"v4.19.192",
"v4.19.191",
"v4.19.190",
"v4.19.189",
"v4.19.188",
"v4.19.187",
"v4.19.186",
"v4.19.185",
"v4.19.184",
"v4.19.183",
"v4.19.182",
"v4.19.181",
"v4.19.180",
"v4.19.179",
"v4.19.178",
"v4.19.177",
"v4.19.176",
"v4.19.175",
"v4.19.174",
"v4.19.173",
"v4.19.172",
"v4.19.171",
"v4.19.170",
"v4.19.169",
"v4.19.168",
"v4.19.167",
"v4.19.166",
"v4.19.165",
"v4.19.164",
"v4.19.163",
"v4.19.162",
"v4.19.161",
"v4.19.160",
"v4.19.159",
"v4.19.158",
"v4.19.157",
"v4.19.156",
"v4.19.155",
"v4.19.154",
"v4.19.153",
"v4.19.152",
"v4.19.151",
"v4.19.150",
"v4.19.149",
"v4.19.148",
"v4.19.147",
"v4.19.146",
"v4.19.145",
"v4.19.144",
"v4.19.143",
"v4.19.142",
"v4.19.141",
"v4.19.140",
"v4.19.139",
"v4.19.138",
"v4.19.137",
"v4.19.136",
"v4.19.135",
"v5.4.177",
"v5.4.176",
"v5.4.175",
"v5.4.174",
"v5.4.173",
"v5.4.172",
"v5.4.171",
"v5.4.170",
"v5.4.169",
"v5.4.168",
"v5.4.167",
"v5.4.166",
"v5.4.165",
"v5.4.164",
"v5.4.163",
"v5.4.162",
"v5.4.161",
"v5.4.160",
"v5.4.159",
"v5.4.158",
"v5.4.157",
"v5.4.156",
"v5.4.155",
"v5.4.154",
"v5.4.153",
"v5.4.152",
"v5.4.151",
"v5.4.150",
"v5.4.149",
"v5.4.148",
"v5.4.147",
"v5.4.146",
"v5.4.145",
"v5.4.144",
"v5.4.143",
"v5.4.142",
"v5.4.141",
"v5.4.140",
"v5.4.139",
"v5.4.138",
"v5.4.137",
"v5.4.136",
"v5.4.135",
"v5.4.134",
"v5.4.133",
"v5.4.132",
"v5.4.131",
"v5.4.130",
"v5.4.129",
"v5.4.128",
"v5.4.127",
"v5.4.126",
"v5.4.125",
"v5.4.124",
"v5.4.123",
"v5.4.122",
"v5.4.121",
"v5.4.120",
"v5.4.119",
"v5.4.118",
"v5.4.117",
"v5.4.116",
"v5.4.115",
"v5.4.114",
"v5.4.113",
"v5.4.112",
"v5.4.111",
"v5.4.110",
"v5.4.109",
"v5.4.108",
"v5.4.107",
"v5.4.106",
"v5.4.105",
"v5.4.104",
"v5.4.103",
"v5.4.102",
"v5.4.101",
"v5.4.100",
"v5.4.99",
"v5.4.98",
"v5.4.97",
"v5.4.96",
"v5.4.95",
"v5.4.94",
"v5.4.93",
"v5.4.92",
"v5.4.91",
"v5.4.90",
"v5.4.89",
"v5.4.88",
"v5.4.87",
"v5.4.86",
"v5.4.85",
"v5.4.84",
"v5.4.83",
"v5.4.82",
"v5.4.81",
"v5.4.80",
"v5.4.79",
"v5.4.78",
"v5.4.77",
"v5.4.76",
"v5.4.75",
"v5.4.74",
"v5.4.73",
"v5.4.72",
"v5.4.71",
"v5.4.70",
"v5.4.69",
"v5.4.68",
"v5.4.67",
"v5.4.66",
"v5.4.65",
"v5.4.64",
"v5.4.63",
"v5.4.62",
"v5.4.61",
"v5.4.60",
"v5.4.59",
"v5.4.58",
"v5.4.57",
"v5.4.56",
"v5.4.55",
"v5.4.54",
"v5.7.19",
"v5.7.18",
"v5.7.17",
"v5.7.16",
"v5.7.15",
"v5.7.14",
"v5.7.13",
"v5.7.12",
"v5.7.11"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-48724.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "4.14.265"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "4.15.0"
},
{
"fixed": "4.19.228"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "4.20.0"
},
{
"fixed": "5.4.178"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.5.0"
},
{
"fixed": "5.10.99"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.8.0"
},
{
"fixed": "5.15.22"
}
]
},
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "5.11.0"
},
{
"fixed": "5.16.8"
}
]
}
],
"package": {
"name": "Kernel",
"ecosystem": "Linux"
},
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-48724.json"
}
}
],
"modified": "2026-10-28T02:30:49.712137444Z",
"provider": "osv",
"references": [
"https://git.kernel.org/stable/c/336d096b62bdc673e852b6b80d5072d7888ce85d",
"https://git.kernel.org/stable/c/5c43d46daa0d2928234dd2792ebebc35d29ee2d1",
"https://git.kernel.org/stable/c/99e675d473eb8cf2deac1376a0f840222fc1adcf",
"https://git.kernel.org/stable/c/9d9995b0371e4e8c18d4f955479e5d47efe7b2d4",
"https://git.kernel.org/stable/c/a0c685ba99961b1dd894b2e470e692a539770f6d",
"https://git.kernel.org/stable/c/a31cb1f0fb6caf46ffe88c41252b6b7a4ee062d9",
"https://git.kernel.org/stable/c/b62eceb5f8f08815fe3f945fc55bbf997c344ecd",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/48xxx/CVE-2022-48724.json",
"https://nvd.nist.gov/vuln/detail/CVE-2022-48724",
"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/2022/48xxx/CVE-2022-48724.json"
}
},
"related_cves": [
{
"value": "CVE-2022-48724",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 517728,
"published_at": "2024-06-20T11:13:14.644+00:00"
}