mmc: davinci: Don't strip remove function when driver is builtin
Description
In the Linux kernel, the following vulnerability has been resolved:
mmc: davinci: Don't strip remove function when driver is builtin
Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.
This also fixes a W=1 modpost warning:
WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Affected products
51- osv-coords49 versionspkg:rpm/opensuse/dtb-aarch64&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-64kb&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-debug&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-default-base&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-default&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-docs&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-kvmsmall&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-obs-build&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-obs-qa&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-rt_debug&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-source-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-source&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-source-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-syms-azure&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-syms&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-syms-rt&distro=openSUSE%20Leap%2015.6pkg:rpm/opensuse/kernel-zfcpdump&distro=openSUSE%20Leap%2015.6pkg:rpm/suse/kernel-64kb&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20High%20Availability%20Extension%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Legacy%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Workstation%20Extension%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-kvmsmall&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-livepatch-MICRO-6-0-RT_Update_2&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-livepatch-MICRO-6-0_Update_2&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-livepatch-SLE15-SP6-RT_Update_2&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-livepatch-SLE15-SP6_Update_4&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-rt_debug&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-rt&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-source-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-syms-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-syms-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-zfcpdump&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6
< 6.4.0-150600.23.22.1+ 48 more
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.8.11.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1.150600.12.8.3
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.10.8.3
- (no CPE)range: < 6.4.0-150600.10.8.3
- (no CPE)range: < 6.4.0-150600.8.11.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.10.8.3
- (no CPE)range: < 6.4.0-150600.8.11.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.10.8.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.8.11.1
- (no CPE)range: < 6.4.0-150600.23.22.1.150600.12.8.3
- (no CPE)range: < 6.4.0-17.1.1.51
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-19.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-19.1
- (no CPE)range: < 1-1.1
- (no CPE)range: < 1-1.1
- (no CPE)range: < 1-150600.1.3.2
- (no CPE)range: < 1-150600.13.3.3
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.10.8.3
- (no CPE)range: < 6.4.0-10.1
- (no CPE)range: < 6.4.0-150600.10.8.3
- (no CPE)range: < 6.4.0-150600.8.11.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-19.1
- (no CPE)range: < 6.4.0-10.1
- (no CPE)range: < 6.4.0-150600.10.8.3
- (no CPE)range: < 6.4.0-150600.8.11.1
- (no CPE)range: < 6.4.0-150600.23.22.1
- (no CPE)range: < 6.4.0-150600.10.8.1
- (no CPE)range: < 6.4.0-150600.23.22.1
Patches
Vulnerability mechanics
References
6- git.kernel.org/stable/c/1d5ed0efe51d36b9ae9b64f133bf41cdbf56f584mitre
- git.kernel.org/stable/c/55c421b364482b61c4c45313a535e61ed5ae4ea3mitre
- git.kernel.org/stable/c/5ee241f72edc6dce5051a5f100eab6cc019d873emitre
- git.kernel.org/stable/c/6ff7cfa02baabec907f6f29ea76634e6256d2ec4mitre
- git.kernel.org/stable/c/7590da4c04dd4aa9c262da0231e978263861c6ebmitre
- git.kernel.org/stable/c/aea35157bb9b825faa0432bd0f7fbea37ff39aa1mitre
News mentions
0No linked articles in our index yet.