pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()
Description
In the Linux kernel, the following vulnerability has been resolved:
pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()
With CONFIG_COMPILE_TEST && !CONFIG_HAVE_CLK, pwm_mediatek_config() has a divide-by-zero in the following line:
do_div(resolution, clk_get_rate(pc->clk_pwms[pwm->hwpwm]));
due to the fact that the !CONFIG_HAVE_CLK version of clk_get_rate() returns zero.
This is presumably just a theoretical problem: COMPILE_TEST overrides the dependency on RALINK which would select COMMON_CLK. Regardless it's a good idea to check for the error explicitly to avoid divide-by-zero.
Fixes the following warning:
drivers/pwm/pwm-mediatek.o: warning: objtool: .text: unexpected end of section
[ukleinek: s/CONFIG_CLK/CONFIG_HAVE_CLK/]
Affected products
80- osv-coords78 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-64kb&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP7pkg:rpm/suse/kernel-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP7pkg:rpm/suse/kernel-coco_debug&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP7pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20High%20Availability%20Extension%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20High%20Availability%20Extension%2015%20SP7pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP7pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP7pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Legacy%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Legacy%2015%20SP7pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Workstation%20Extension%2015%20SP6pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Workstation%20Extension%2015%20SP7pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP7pkg:rpm/suse/kernel-kvmsmall&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-kvmsmall&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-livepatch-SLE15-SP6-RT_Update_11&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-livepatch-SLE15-SP6_Update_12&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP6pkg:rpm/suse/kernel-livepatch-SLE15-SP7-RT_Update_2&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP7pkg:rpm/suse/kernel-livepatch-SLE15-SP7_Update_2&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP7pkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP7pkg: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%20Linux%20Micro%206.1pkg:rpm/suse/kernel-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP7pkg:rpm/suse/kernel-source-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-source-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP7pkg:rpm/suse/kernel-source-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%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%20Basesystem%2015%20SP7pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP7pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Micro%206.0pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Micro%206.1pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP7pkg:rpm/suse/kernel-syms-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP6pkg:rpm/suse/kernel-syms-azure&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Public%20Cloud%2015%20SP7pkg:rpm/suse/kernel-syms-coco&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Confidential%20Computing%20Technical%20Preview%2015%20SP6pkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP6pkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Development%20Tools%2015%20SP7pkg:rpm/suse/kernel-syms-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP6pkg:rpm/suse/kernel-syms-rt&distro=SUSE%20Real%20Time%20Module%2015%20SP7pkg:rpm/suse/kernel-zfcpdump&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP6pkg:rpm/suse/kernel-zfcpdump&distro=SUSE%20Linux%20Enterprise%20Module%20for%20Basesystem%2015%20SP7
< 6.4.0-150600.23.53.1+ 77 more
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.8.40.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.23.53.1.150600.12.24.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.8.40.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.8.40.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-150600.8.40.1
- (no CPE)range: < 6.4.0-150700.20.6.1
- (no CPE)range: < 6.4.0-15061.28.coco15sp6.1
- (no CPE)range: < 6.4.0-15061.28.coco15sp6.1
- (no CPE)range: < 6.4.0-150600.23.53.1.150600.12.24.1
- (no CPE)range: < 6.4.0-150700.53.6.1.150700.17.6.1
- (no CPE)range: < 6.4.0-30.1.21.8
- (no CPE)range: < 6.4.0-30.1.21.8
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-30.1
- (no CPE)range: < 6.4.0-30.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-30.1
- (no CPE)range: < 6.4.0-30.1
- (no CPE)range: < 1-150600.1.3.2
- (no CPE)range: < 1-150600.13.3.1
- (no CPE)range: < 1-150700.1.5.1
- (no CPE)range: < 1-150700.15.3.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-33.1
- (no CPE)range: < 6.4.0-33.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150700.7.8.1
- (no CPE)range: < 6.4.0-150600.8.40.1
- (no CPE)range: < 6.4.0-150700.20.6.1
- (no CPE)range: < 6.4.0-15061.28.coco15sp6.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-30.1
- (no CPE)range: < 6.4.0-30.1
- (no CPE)range: < 6.4.0-33.1
- (no CPE)range: < 6.4.0-33.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150700.7.8.1
- (no CPE)range: < 6.4.0-150600.8.40.1
- (no CPE)range: < 6.4.0-150700.20.6.1
- (no CPE)range: < 6.4.0-15061.28.coco15sp6.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
- (no CPE)range: < 6.4.0-150600.10.39.1
- (no CPE)range: < 6.4.0-150700.7.8.1
- (no CPE)range: < 6.4.0-150600.23.53.1
- (no CPE)range: < 6.4.0-150700.53.6.1
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
9- git.kernel.org/stable/c/4cb15042b5f3ec0474e91cf379120cc597625dbbmitre
- git.kernel.org/stable/c/77fb96dbe350e8a5ae4965ff9f6e7049f3966a6bmitre
- git.kernel.org/stable/c/7ca59947b5fcf94e7ea4029d1bd0f7c41500a161mitre
- git.kernel.org/stable/c/8b9f60725d74b72c238e4437c957d0217746b506mitre
- git.kernel.org/stable/c/8ddbec73ea2598d8414e8f7103241b55cf877010mitre
- git.kernel.org/stable/c/c343856ff2689ce0afef823592732fc178ef4aacmitre
- git.kernel.org/stable/c/e1206d8e1651c9f62e5640b69b14d925b1a0a00amitre
- git.kernel.org/stable/c/e3cf0c38d3ce754ad63005102fcfeb0b7ff3290bmitre
- git.kernel.org/stable/c/f3e9cf266c2c103cf071e15d7a17e2c699fff3c5mitre
News mentions
0No linked articles in our index yet.