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-rt-develUpgrade kernel-develUpgrade bpftoolUpgrade kernel-rt-coreUpgrade kernel-debugUpgrade kernel-rt-modules-extraUpgrade python3-perfUpgrade kernelUpgrade kernel-coreUpgrade kernel-debug-coreUpgrade kernel-zfcpdump-modules-extraUpgrade kernel-modulesUpgrade kernel-rt-kvmUpgrade kernel-cross-headersUpgrade kernel-rt-debug-modulesUpgrade kernel-zfcpdumpUpgrade kernel-rt-modulesUpgrade kernel-tools-libsUpgrade kernel-rt-debug-coreUpgrade kernel-debug-develUpgrade kernel-rt-debugUpgrade kernel-modules-extraUpgrade kernel-debug-modulesUpgrade kernel-rt-debug-kvmUpgrade kernel-headersUpgrade kernel-tools-libs-develUpgrade kernel-rt-debug-develUpgrade perfUpgrade kernel-zfcpdump-coreUpgrade kernel-zfcpdump-modulesUpgrade kernel-rtUpgrade kernel-debug-modules-extraUpgrade kernel-toolsUpgrade kernel-docUpgrade kernel-abi-stablelistsUpgrade kernel-zfcpdump-develUpgrade kernel-rt-debug-modules-extra | Aug 12, 2024 | May 21, 2024 |
| Amazon Linux Ami 2 | — | Upgrade kernelUpgrade bpftool-debuginfoUpgrade python-perf-debuginfoUpgrade bpftoolUpgrade kernel-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade python-perfUpgrade kernel-headersUpgrade kernel-livepatch-5.10.173-154.642Upgrade kernel-debuginfo-common-aarch64Upgrade perf-debuginfoUpgrade kernel-toolsUpgrade kernel-tools-develUpgrade perfUpgrade kernel-livepatch-4.14.309-231.529Upgrade kernel-tools-debuginfoUpgrade kernel-devel | May 21, 2025 | May 21, 2024 |
| Debian | — | Upgrade linux | Jul 30, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp10 | — | Upgrade bpftoolUpgrade kernelUpgrade kernel-develUpgrade perfUpgrade kernel-headersUpgrade kernel-tools-libs-develUpgrade kernel-toolsUpgrade kernel-tools-libs | Oct 8, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp12 | — | Upgrade bpftoolUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade kernelUpgrade python3-perfUpgrade kernel-abi-stablelists | Oct 9, 2024 | May 21, 2024 |
| Huawei Euleros 2_0_sp9 | — | Upgrade python3-perfUpgrade kernel-toolsUpgrade kernelUpgrade kernel-tools-libs | 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-debuginfoUpgrade kernel-rt-debug-modulesUpgrade kernel-rt-coreUpgrade kernel-develUpgrade kernel-debugUpgrade kernel-rt-modulesUpgrade python3-perfUpgrade kernel-modulesUpgrade kernel-modules-extraUpgrade bpftoolUpgrade kernel-tools-libsUpgrade kernel-debug-coreUpgrade perfUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-develUpgrade kernel-coreUpgrade kernel-rt-kvmUpgrade kernel-debug-develUpgrade kernel-tools-debuginfoUpgrade kernel-toolsUpgrade python3-perf-debuginfoUpgrade kernel-rt-debug-coreUpgrade kernel-rt-debuginfo-common-x86_64Upgrade kernel-rt-modules-extraUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-debugUpgrade kernel-debug-modulesUpgrade kernel-rt-debug-develUpgrade kernel-rt-debuginfoUpgrade kernel-debug-modules-extraUpgrade kernel-cross-headersUpgrade kernel-debug-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-rtUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-tools-libs-develUpgrade kernel-rt-debug-kvmUpgrade perf-debuginfoUpgrade kernel-headersUpgrade kernel | Aug 22, 2024 | May 21, 2024 |
| Suse | — | Upgrade kernel-default-develUpgrade gfs2-kmp-64kbUpgrade kernel-rtUpgrade kselftests-kmp-64kbUpgrade kernel-zfcpdumpUpgrade kernel-source-azureUpgrade gfs2-kmp-defaultUpgrade dtb-rockchipUpgrade dtb-amazonUpgrade kernel-develUpgrade kernel-source-vanillaUpgrade kernel-azure-livepatch-develUpgrade dtb-allwinnerUpgrade ocfs2-kmp-azureUpgrade kernel-kvmsmall-develUpgrade gfs2-kmp-azureUpgrade kernel-kvmsmallUpgrade kernel-azure-optionalUpgrade kernel-default-base-rebuildUpgrade ocfs2-kmp-defaultUpgrade kernel-devel-rtUpgrade dtb-caviumUpgrade kernel-rt-develUpgrade kernel-default-optionalUpgrade kernel-azureUpgrade dtb-alteraUpgrade gfs2-kmp-rtUpgrade dtb-exynosUpgrade cluster-md-kmp-rtUpgrade kernel-rt_debug-develUpgrade dtb-xilinxUpgrade dtb-lgUpgrade kernel-64kbUpgrade kselftests-kmp-azureUpgrade dtb-freescaleUpgrade kernel-64kb-develUpgrade kernel-devel-azureUpgrade cluster-md-kmp-azureUpgrade kernel-default-livepatchUpgrade kernel-64kb-livepatch-develUpgrade kernel-azure-develUpgrade kernel-default-vdsoUpgrade kernel-syms-azureUpgrade kernel-debug-vdsoUpgrade dtb-mediatekUpgrade reiserfs-kmp-azureUpgrade dtb-qcomUpgrade kernel-rt-livepatchUpgrade kernel-sourceUpgrade dlm-kmp-64kbUpgrade kernel-docs-htmlUpgrade kernel-azure-vdsoUpgrade kernel-azure-extraUpgrade kernel-azure-baseUpgrade dtb-appleUpgrade dlm-kmp-azureUpgrade cluster-md-kmp-64kbUpgrade cluster-md-kmp-defaultUpgrade kernel-rt_debugUpgrade kernel-rt-optionalUpgrade kernel-defaultUpgrade dtb-marvellUpgrade kselftests-kmp-rtUpgrade kernel-syms-rtUpgrade kernel-default-extraUpgrade dtb-hisiliconUpgrade dtb-broadcomUpgrade dtb-amlogicUpgrade reiserfs-kmp-defaultUpgrade kernel-obs-buildUpgrade kernel-rt_debug-vdsoUpgrade kernel-debug-develUpgrade kernel-rt-vdsoUpgrade kernel-default-livepatch-develUpgrade kernel-source-rtUpgrade kernel-debug-livepatch-develUpgrade kernel-kvmsmall-vdsoUpgrade kernel-rt-livepatch-develUpgrade kernel-obs-qaUpgrade kernel-rt_debug-livepatch-develUpgrade kernel-64kb-extraUpgrade dtb-sprdUpgrade kernel-kvmsmall-livepatch-develUpgrade kernel-debugUpgrade kernel-symsUpgrade kernel-rt-extraUpgrade dtb-socionextUpgrade dtb-armUpgrade dtb-amdUpgrade dlm-kmp-defaultUpgrade kernel-macrosUpgrade kernel-docsUpgrade dlm-kmp-rtUpgrade kernel-default-baseUpgrade dtb-apmUpgrade kernel-64kb-optionalUpgrade dtb-nvidiaUpgrade reiserfs-kmp-64kbUpgrade dtb-renesasUpgrade reiserfs-kmp-rtUpgrade kselftests-kmp-defaultUpgrade ocfs2-kmp-64kbUpgrade kernel-default-manUpgrade ocfs2-kmp-rt | Jun 12, 2024 | May 21, 2024 |
| Ubuntu | — | Upgrade linux-awsUpgrade linux-gkeop-5.15Upgrade linux-nvidia-tegra-5.15Upgrade linux-azure-4.15Upgrade linux-hwe-5.15Upgrade linux-aws-5.15Upgrade linux-lowlatencyUpgrade linux-raspiUpgrade linux-aws-5.4Upgrade linux-azure-5.4Upgrade linux-azure-fipsUpgrade linux-hweUpgrade linuxUpgrade linux-azureUpgrade linux-gcp-5.4Upgrade linux-gkeopUpgrade linux-ibm-5.4Upgrade linux-aws-hweUpgrade linux-gcp-fipsUpgrade linux-iotUpgrade linux-gcp-4.15Upgrade linux-gkeUpgrade linux-riscv-5.15Upgrade linux-azure-5.15Upgrade linux-raspi-5.4Upgrade linux-fipsUpgrade linux-ibmUpgrade linux-azure-fdeUpgrade linux-oracle-5.4Upgrade linux-hwe-5.4Upgrade linux-nvidiaUpgrade linux-bluefieldUpgrade linux-intel-iot-realtimeUpgrade linux-intel-iotgUpgrade linux-realtimeUpgrade linux-gcpUpgrade linux-intel-iotg-5.15Upgrade linux-kvmUpgrade linux-xilinx-zynqmpUpgrade linux-oracle-5.15Upgrade linux-oracleUpgrade linux-aws-fipsUpgrade linux-lowlatency-hwe-5.15Upgrade linux-gcp-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