In the Linux kernel, the following vulnerability has been resolved:
cxl/region: Do not try to cleanup after cxl_region_setup_targets() fails
Commit 5e42bcbc3fef ("cxl/region: decrement ->nr_targets on error in cxl_region_attach()") tried to avoid 'eiw' initialization errors when ->nr_targets exceeded 16, by just decrementing ->nr_targets when cxl_region_setup_targets() failed.
Commit 86987c766276 ("cxl/region: Cleanup target list on attach error") extended that cleanup to also clear cxled->pos and p->targets[pos]. The initialization error was incidentally fixed separately by: Commit 8d4285425714 ("cxl/region: Fix port setup uninitialized variable warnings") which was merged a few days after 5e42bcbc3fef.
But now the original cleanup when cxl_region_setup_targets() fails prevents endpoint and switch decoder resources from being reused:
1) the cleanup does not set the decoder's region to NULL, which results in future dpa_size_store() calls returning -EBUSY 2) the decoder is not properly freed, which results in future commit errors associated with the upstream switch
Now that the initialization errors were fixed separately, the proper cleanup for this case is to just return immediately. Then the resources associated with this target get cleanup up as normal when the failed region is deleted.
The ->nr_targets decrement in the error case also helped prevent a p->targets[] array overflow, so add a new check to prevent against that overflow.
Tested by trying to create an invalid region for a 2 switch * 2 endpoint topology, and then following up with creating a valid region.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 30, 2024 | May 21, 2024 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | May 21, 2024 |
| Suse | — | Upgrade kernel-debug-vdsoUpgrade kernel-64kb-extraUpgrade ocfs2-kmp-azureUpgrade dlm-kmp-rtUpgrade gfs2-kmp-azureUpgrade cluster-md-kmp-64kbUpgrade kselftests-kmp-azureUpgrade dtb-renesasUpgrade dtb-caviumUpgrade reiserfs-kmp-64kbUpgrade dlm-kmp-defaultUpgrade dtb-nvidiaUpgrade kernel-source-vanillaUpgrade reiserfs-kmp-rtUpgrade kselftests-kmp-rtUpgrade dtb-rockchipUpgrade reiserfs-kmp-azureUpgrade kernel-default-base-rebuildUpgrade kernel-rt-optionalUpgrade kernel-docsUpgrade kernel-azureUpgrade kernel-source-rtUpgrade dtb-socionextUpgrade kernel-rt-extraUpgrade kernel-obs-buildUpgrade kernel-rt_debug-livepatch-develUpgrade dtb-qcomUpgrade gfs2-kmp-defaultUpgrade ocfs2-kmp-defaultUpgrade kernel-defaultUpgrade kernel-rt-vdsoUpgrade kernel-rt_debug-develUpgrade kernel-default-livepatch-develUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rtUpgrade kselftests-kmp-defaultUpgrade kernel-default-baseUpgrade cluster-md-kmp-rtUpgrade dtb-alteraUpgrade kernel-azure-develUpgrade dtb-armUpgrade dtb-allwinnerUpgrade dtb-sprdUpgrade kernel-obs-qaUpgrade dtb-freescaleUpgrade kernel-rt_debugUpgrade ocfs2-kmp-64kbUpgrade kernel-rt-develUpgrade kernel-rt_debug-vdsoUpgrade kernel-syms-azureUpgrade kernel-symsUpgrade kernel-debug-develUpgrade kernel-debugUpgrade dtb-broadcomUpgrade dtb-appleUpgrade kernel-64kb-optionalUpgrade kernel-azure-optionalUpgrade dtb-apmUpgrade dtb-lgUpgrade reiserfs-kmp-defaultUpgrade kernel-zfcpdumpUpgrade gfs2-kmp-64kbUpgrade dtb-amdUpgrade kernel-syms-rtUpgrade kernel-default-extraUpgrade dtb-amlogicUpgrade kernel-azure-livepatch-develUpgrade kernel-devel-rtUpgrade dtb-hisiliconUpgrade dtb-amazonUpgrade dlm-kmp-azureUpgrade dtb-mediatekUpgrade kernel-rt-livepatch-develUpgrade kernel-default-livepatchUpgrade kernel-64kb-livepatch-develUpgrade dtb-exynosUpgrade cluster-md-kmp-azureUpgrade kselftests-kmp-64kbUpgrade kernel-default-optionalUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-debug-livepatch-develUpgrade kernel-azure-vdsoUpgrade kernel-develUpgrade kernel-kvmsmallUpgrade kernel-docs-htmlUpgrade kernel-default-vdsoUpgrade kernel-default-develUpgrade kernel-sourceUpgrade kernel-macrosUpgrade kernel-kvmsmall-develUpgrade kernel-64kb-develUpgrade gfs2-kmp-rtUpgrade dtb-xilinxUpgrade kernel-azure-extraUpgrade dtb-marvellUpgrade ocfs2-kmp-rtUpgrade kernel-devel-azureUpgrade kernel-source-azureUpgrade kernel-64kbUpgrade dlm-kmp-64kbUpgrade cluster-md-kmp-default | Aug 9, 2024 | May 21, 2024 |
| Ubuntu | — | Upgrade linux-nvidia-6.5 | Nov 19, 2024 | May 21, 2024 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Oct 14, 2025 | May 21, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub