In the Linux kernel, the following vulnerability has been resolved:
mmc: sdio: fix possible resource leaks in some error paths
If sdio_add_func() or sdio_init_func() fails, sdio_remove_func() can not release the resources, because the sdio function is not presented in these two cases, it won't call of_node_put() or put_device().
To fix these leaks, make sdio_func_present() only control whether device_del() needs to be called or not, then always call of_node_put() and put_device().
In error case in sdio_init_func(), the reference of 'card->dev' is not get, to avoid redundant put in sdio_free_func_cis(), move the get_device() to sdio_alloc_func() and put_device() to sdio_release_func(), it can keep the get/put function be balanced.
Without this patch, while doing fault inject test, it can get the following leak reports, after this fix, the leak is gone.
unreferenced object 0xffff888112514000 (size 2048): comm "kworker/3:2", pid 65, jiffies 4294741614 (age 124.774s) hex dump (first 32 bytes): 00 e0 6f 12 81 88 ff ff 60 58 8d 06 81 88 ff ff ..o.....`X...... 10 40 51 12 81 88 ff ff 10 40 51 12 81 88 ff ff .@Q......@Q..... backtrace: [<000000009e5931da>] kmalloc_trace+0x21/0x110 [<000000002f839ccb>] mmc_alloc_card+0x38/0xb0 [mmc_core] [<0000000004adcbf6>] mmc_sdio_init_card+0xde/0x170 [mmc_core] [<000000007538fea0>] mmc_attach_sdio+0xcb/0x1b0 [mmc_core] [<00000000d4fdeba7>] mmc_rescan+0x54a/0x640 [mmc_core]
unreferenced object 0xffff888112511000 (size 2048): comm "kworker/3:2", pid 65, jiffies 4294741623 (age 124.766s) hex dump (first 32 bytes): 00 40 51 12 81 88 ff ff e0 58 8d 06 81 88 ff ff [email protected]...... 10 10 51 12 81 88 ff ff 10 10 51 12 81 88 ff ff ..Q.......Q..... backtrace: [<000000009e5931da>] kmalloc_trace+0x21/0x110 [<00000000fcbe706c>] sdio_alloc_func+0x35/0x100 [mmc_core] [<00000000c68f4b50>] mmc_attach_sdio.cold.18+0xb1/0x395 [mmc_core] [<00000000d4fdeba7>] mmc_rescan+0x54a/0x640 [mmc_core]
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 |
|---|---|---|---|---|
| Alma_linux | — | Upgrade kernel-rtUpgrade kernel-tools-libs-develUpgrade kernel-rt-debug-kvmUpgrade kernel-toolsUpgrade kernel-zfcpdump-coreUpgrade perfUpgrade kernel-zfcpdump-develUpgrade kernel-abi-stablelistsUpgrade kernel-zfcpdump-modulesUpgrade kernel-docUpgrade kernel-headersUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debug-modules-extraUpgrade kernel-rt-debug-develUpgrade kernel-modulesUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-rt-coreUpgrade kernel-rt-kvmUpgrade kernel-zfcpdumpUpgrade kernel-debug-develUpgrade kernel-rt-debug-modulesUpgrade kernel-debugUpgrade kernel-rt-debug-coreUpgrade kernel-develUpgrade kernel-rt-modulesUpgrade python3-perfUpgrade kernel-rt-modules-extraUpgrade kernel-rt-develUpgrade kernel-debug-modulesUpgrade kernel-cross-headersUpgrade kernel-modules-extraUpgrade kernelUpgrade kernel-tools-libsUpgrade kernel-debug-coreUpgrade kernel-rt-debugUpgrade bpftoolUpgrade kernel-core | Aug 12, 2024 | May 21, 2024 |
| Amazon Linux Ami 2 | — | Upgrade kernel-debuginfo-common-x86_64Upgrade bpftoolUpgrade kernel-headersUpgrade kernelUpgrade python-perf-debuginfoUpgrade kernel-debuginfoUpgrade python-perfUpgrade bpftool-debuginfoUpgrade kernel-livepatch-5.10.173-154.642Upgrade kernel-debuginfo-common-aarch64Upgrade kernel-develUpgrade perfUpgrade kernel-tools-develUpgrade kernel-tools-debuginfoUpgrade kernel-livepatch-4.14.309-231.529Upgrade kernel-toolsUpgrade perf-debuginfo | May 21, 2025 | May 21, 2024 |
| Debian | — | Upgrade linux | Jul 30, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade perfUpgrade kernel-headersUpgrade bpftoolUpgrade kernelUpgrade kernel-develUpgrade kernel-tools-libs-develUpgrade kernel-toolsUpgrade kernel-tools-libs | Oct 8, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernelUpgrade python3-perfUpgrade kernel-abi-stablelistsUpgrade kernel-toolsUpgrade bpftoolUpgrade kernel-tools-libs | Oct 9, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade python3-perfUpgrade kernel-tools-libsUpgrade kernelUpgrade kernel-tools | Oct 8, 2024 | May 21, 2024 |
| Oracle_linux | — | Upgrade kernel | Aug 16, 2024 | May 21, 2024 |
| Redhat_linux | — | Upgrade kernel-rtUpgrade kernelNo solution exists | Aug 12, 2024 | May 21, 2024 |
| Rocky_linux | — | Upgrade kernel-toolsUpgrade kernel-rt-debug-coreUpgrade kernel-rt-coreUpgrade kernel-tools-libsUpgrade kernel-rt-modulesUpgrade kernel-rt-debugUpgrade kernel-develUpgrade kernel-debuginfoUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-rt-debug-modulesUpgrade kernel-rt-modules-extraUpgrade kernel-coreUpgrade kernel-modules-extraUpgrade kernel-rt-kvmUpgrade bpftoolUpgrade kernel-rt-develUpgrade kernel-debug-coreUpgrade python3-perf-debuginfoUpgrade kernel-rt-debug-debuginfoUpgrade kernel-tools-debuginfoUpgrade perfUpgrade kernel-debugUpgrade python3-perfUpgrade kernel-debug-develUpgrade kernel-modulesUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-rt-debug-kvmUpgrade kernel-headersUpgrade kernel-debug-modulesUpgrade kernel-rt-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-debug-debuginfoUpgrade kernel-rtUpgrade kernel-rt-debug-develUpgrade kernel-cross-headersUpgrade kernel-debug-modules-extraUpgrade kernel-tools-libs-develUpgrade perf-debuginfoUpgrade kernel | Aug 22, 2024 | May 21, 2024 |
| Suse | — | Upgrade kernel-rt_debug-vdsoUpgrade kernel-debug-develUpgrade kernel-macrosUpgrade kernel-rt-livepatch-develUpgrade kernel-default-livepatch-develUpgrade reiserfs-kmp-defaultUpgrade kernel-kvmsmall-vdsoUpgrade kernel-syms-rtUpgrade kselftests-kmp-rtUpgrade dlm-kmp-rtUpgrade kernel-obs-qaUpgrade dtb-armUpgrade reiserfs-kmp-rtUpgrade dtb-apmUpgrade reiserfs-kmp-64kbUpgrade dtb-renesasUpgrade kernel-64kb-optionalUpgrade dtb-nvidiaUpgrade kernel-default-baseUpgrade kernel-debug-livepatch-develUpgrade kernel-rt-vdsoUpgrade kernel-source-rtUpgrade dtb-socionextUpgrade dtb-marvellUpgrade kernel-defaultUpgrade cluster-md-kmp-defaultUpgrade kernel-rt-optionalUpgrade kernel-obs-buildUpgrade kernel-default-extraUpgrade kernel-rt_debugUpgrade dtb-broadcomUpgrade dtb-hisiliconUpgrade dtb-sprdUpgrade kernel-docsUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-64kb-extraUpgrade kernel-debugUpgrade dlm-kmp-defaultUpgrade kernel-default-manUpgrade kernel-azure-extraUpgrade ocfs2-kmp-rtUpgrade kernel-symsUpgrade dtb-appleUpgrade kernel-kvmsmall-livepatch-develUpgrade dtb-amlogicUpgrade cluster-md-kmp-64kbUpgrade dlm-kmp-azureUpgrade kernel-azure-baseUpgrade kernel-docs-htmlUpgrade kernel-rt-extraUpgrade dtb-amdUpgrade kselftests-kmp-defaultUpgrade ocfs2-kmp-64kbUpgrade kernel-azure-vdsoUpgrade dtb-allwinnerUpgrade dtb-freescaleUpgrade kernel-default-optionalUpgrade dtb-xilinxUpgrade kernel-default-base-rebuildUpgrade ocfs2-kmp-defaultUpgrade kernel-source-vanillaUpgrade kernel-kvmsmall-develUpgrade kernel-kvmsmallUpgrade kernel-azure-optionalUpgrade dtb-caviumUpgrade kernel-azureUpgrade dlm-kmp-64kbUpgrade gfs2-kmp-defaultUpgrade kernel-source-azureUpgrade cluster-md-kmp-rtUpgrade kernel-default-livepatchUpgrade dtb-rockchipUpgrade reiserfs-kmp-azureUpgrade dtb-exynosUpgrade dtb-qcomUpgrade dtb-mediatekUpgrade kernel-devel-rtUpgrade kselftests-kmp-azureUpgrade kernel-syms-azureUpgrade kernel-sourceUpgrade ocfs2-kmp-azureUpgrade kernel-azure-develUpgrade gfs2-kmp-azureUpgrade dtb-alteraUpgrade kernel-default-vdsoUpgrade kernel-64kb-livepatch-develUpgrade kernel-64kb-develUpgrade cluster-md-kmp-azureUpgrade kernel-devel-azureUpgrade kselftests-kmp-64kbUpgrade kernel-zfcpdumpUpgrade kernel-rt-livepatchUpgrade kernel-azure-livepatch-develUpgrade kernel-debug-vdsoUpgrade gfs2-kmp-64kbUpgrade dtb-amazonUpgrade kernel-rtUpgrade kernel-develUpgrade gfs2-kmp-rtUpgrade kernel-rt-develUpgrade dtb-lgUpgrade kernel-rt_debug-develUpgrade kernel-default-develUpgrade kernel-64kb | Jun 12, 2024 | May 21, 2024 |
| Ubuntu | — | Upgrade linux-intel-iotg-5.15Upgrade linux-hwe-5.4Upgrade linux-gcp-5.15Upgrade linux-gcpUpgrade linux-oracle-5.15Upgrade linux-ibmUpgrade linux-oracle-5.4Upgrade linux-intel-iotgUpgrade linux-azure-5.15Upgrade linux-realtimeUpgrade linux-xilinx-zynqmpUpgrade linux-kvmUpgrade linux-fipsUpgrade linux-riscv-5.15Upgrade linux-raspi-5.4Upgrade linux-azure-fdeUpgrade linux-aws-fipsUpgrade linux-lowlatency-hwe-5.15Upgrade linux-oracleUpgrade linux-intel-iot-realtimeUpgrade linux-gkeUpgrade linux-bluefieldUpgrade linux-nvidiaUpgrade linuxUpgrade linux-azure-5.4Upgrade linux-hweUpgrade linux-gkeop-5.15Upgrade linux-aws-5.4Upgrade linux-gkeopUpgrade linux-gcp-4.15Upgrade linux-iotUpgrade linux-azureUpgrade linux-awsUpgrade linux-azure-fipsUpgrade linux-aws-5.15Upgrade linux-ibm-5.4Upgrade linux-hwe-5.15Upgrade linux-lowlatencyUpgrade linux-gcp-fipsUpgrade linux-raspiUpgrade linux-gcp-5.4Upgrade linux-aws-hweUpgrade linux-azure-4.15Upgrade 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. | Jan 20, 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