In the Linux kernel, the following vulnerability has been resolved:
cxl/mem: Fix shutdown order
Ira reports that removing cxl_mock_mem causes a crash with the following trace:
BUG: kernel NULL pointer dereference, address: 0000000000000044 [..] RIP: 0010:cxl_region_decode_reset+0x7f/0x180 [cxl_core] [..] Call Trace: <TASK> cxl_region_detach+0xe8/0x210 [cxl_core] cxl_decoder_kill_region+0x27/0x40 [cxl_core] cxld_unregister+0x29/0x40 [cxl_core] devres_release_all+0xb8/0x110 device_unbind_cleanup+0xe/0x70 device_release_driver_internal+0x1d2/0x210 bus_remove_device+0xd7/0x150 device_del+0x155/0x3e0 device_unregister+0x13/0x60 devm_release_action+0x4d/0x90 ? __pfx_unregister_port+0x10/0x10 [cxl_core] delete_endpoint+0x121/0x130 [cxl_core] devres_release_all+0xb8/0x110 device_unbind_cleanup+0xe/0x70 device_release_driver_internal+0x1d2/0x210 bus_remove_device+0xd7/0x150 device_del+0x155/0x3e0 ? lock_release+0x142/0x290 cdev_device_del+0x15/0x50 cxl_memdev_unregister+0x54/0x70 [cxl_core]
This crash is due to the clearing out the cxl_memdev's driver context (@cxlds) before the subsystem is done with it. This is ultimately due to the region(s), that this memdev is a member, being torn down and expecting to be able to de-reference @cxlds, like here:
static int cxl_region_decode_reset(struct cxl_region *cxlr, int count) ... if (cxlds->rcd) goto endpoint_reset; ...
Fix it by keeping the driver context valid until memdev-device unregistration, and subsequently the entire stack of related dependencies, unwinds.
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 cluster-md-kmp-64kbUpgrade kernel-kvmsmall-vdsoUpgrade kernel-docs-htmlUpgrade kernel-default-optionalUpgrade gfs2-kmp-azureUpgrade dtb-nvidiaUpgrade dtb-xilinxUpgrade kernel-debug-vdsoUpgrade kselftests-kmp-azureUpgrade kernel-azure-optionalUpgrade cluster-md-kmp-rtUpgrade dlm-kmp-defaultUpgrade dtb-sprdUpgrade ocfs2-kmp-azureUpgrade kernel-rt_debug-develUpgrade reiserfs-kmp-64kbUpgrade kernel-default-vdsoUpgrade dlm-kmp-rtUpgrade kernel-develUpgrade reiserfs-kmp-rtUpgrade kernel-default-baseUpgrade kernel-rt-extraUpgrade dtb-renesasUpgrade reiserfs-kmp-defaultUpgrade dtb-caviumUpgrade dtb-rockchipUpgrade kernel-rt-vdsoUpgrade dlm-kmp-64kbUpgrade kernel-64kb-extraUpgrade kselftests-kmp-rtUpgrade dtb-marvellUpgrade kernel-source-vanillaUpgrade ocfs2-kmp-defaultUpgrade ocfs2-kmp-64kbUpgrade dtb-allwinnerUpgrade dtb-alteraUpgrade dtb-amdUpgrade kernel-rt-optionalUpgrade kernel-debug-develUpgrade kernel-obs-buildUpgrade kernel-source-rtUpgrade kernel-default-livepatch-develUpgrade kernel-default-livepatchUpgrade dtb-broadcomUpgrade gfs2-kmp-defaultUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-defaultUpgrade kernel-azureUpgrade kernel-azure-develUpgrade dtb-exynosUpgrade kernel-kvmsmall-develUpgrade kernel-default-develUpgrade kselftests-kmp-defaultUpgrade kernel-macrosUpgrade dtb-apmUpgrade cluster-md-kmp-azureUpgrade kernel-zfcpdumpUpgrade kernel-azure-vdsoUpgrade kernel-64kb-optionalUpgrade dtb-hisiliconUpgrade kernel-rt-livepatch-develUpgrade kernel-64kbUpgrade kernel-rt-develUpgrade kernel-docsUpgrade kernel-syms-azureUpgrade dtb-freescaleUpgrade cluster-md-kmp-defaultUpgrade kernel-syms-rtUpgrade kernel-kvmsmallUpgrade kernel-debug-livepatch-develUpgrade kernel-debugUpgrade kernel-default-base-rebuildUpgrade dtb-socionextUpgrade dtb-amazonUpgrade kernel-64kb-livepatch-develUpgrade kernel-rt_debugUpgrade kernel-azure-livepatch-develUpgrade dtb-appleUpgrade kernel-sourceUpgrade kernel-rt_debug-vdsoUpgrade kselftests-kmp-64kbUpgrade kernel-devel-azureUpgrade reiserfs-kmp-azureUpgrade kernel-64kb-develUpgrade dtb-amlogicUpgrade kernel-symsUpgrade gfs2-kmp-rtUpgrade dtb-armUpgrade kernel-default-extraUpgrade dtb-mediatekUpgrade ocfs2-kmp-rtUpgrade dtb-qcomUpgrade kernel-source-azureUpgrade dtb-lgUpgrade dlm-kmp-azureUpgrade kernel-rtUpgrade kernel-obs-qaUpgrade kernel-devel-rtUpgrade kernel-azure-extraUpgrade kernel-kvmsmall-livepatch-develUpgrade gfs2-kmp-64kb | Aug 9, 2024 | May 21, 2024 |
| Ubuntu | — | Upgrade linux-kvmUpgrade linux-nvidia-tegra-igxUpgrade linux-aws-fipsUpgrade linux-azure-5.15Upgrade linux-gkeop-5.15Upgrade linux-gcp-5.15Upgrade linux-gcp-fipsUpgrade linux-xilinx-zynqmpUpgrade linux-gkeopUpgrade linux-realtimeUpgrade linux-azureUpgrade linux-nvidiaUpgrade linux-hwe-5.15Upgrade linux-oracle-5.15Upgrade linux-oracleUpgrade linux-nvidia-6.5Upgrade linux-intel-iotg-5.15Upgrade linux-intel-iotgUpgrade linux-ibmUpgrade linux-awsUpgrade linux-fipsUpgrade linux-gkeUpgrade linux-gcpUpgrade linux-azure-fdeUpgrade linux-lowlatencyUpgrade linux-aws-5.15Upgrade linux-bluefieldUpgrade linux-riscv-5.15Upgrade linux-raspiUpgrade linux-lowlatency-hwe-5.15Upgrade linux-ibm-5.15Upgrade linux-intel-iot-realtimeUpgrade linux-nvidia-tegraUpgrade linuxUpgrade linux-nvidia-tegra-5.15 | 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