CVE-2026-97969
Linux: watchdog: msc313e: Fix clock leak and spurious timer in settimeout()
CVSS
NoneNot scoredExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.17%Chance of exploitation activity in the next 30 days, higher than 6% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in68665016c7b777b44e27b6b0c1e6524c28ebe40aAlso 77ef2aa8b46876ca9935f32dd874c517ccf5d880, 2152a13ee2a9af09a668ebd053a8dbf771dadb80 and 2 moreCVE List
What fixes it
- 68665016c7b777b44e27b6b0c1e6524c28ebe40aLinuxCVE List
- 77ef2aa8b46876ca9935f32dd874c517ccf5d880LinuxCVE List
- 2152a13ee2a9af09a668ebd053a8dbf771dadb80LinuxCVE List
- 2abf99a57b0b71b2b97745981f4039370ab78044LinuxCVE List
- 3db30f315935c2fb0d95f46b7a593b5b4d3ec3d0LinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
watchdog: msc313e: Fix clock leak and spurious timer in settimeout()
msc313e_wdt_settimeout() unconditionally calls msc313e_wdt_start() which introduces two severe bugs:
- If the watchdog is already active, calling start() again will
increase the reference count of the clock again. However stop() is only called once, the reference count is unbalance.
- If the watchdog is stopped, calling settimeout() will start
the hardware timer accidentally.
Factor out the register-writing logic into a helper function. Only call it in settimeout() if the watchdog is running. Otherwise, simply update wdev->timeout.
Text from CVE List
Affected versions 16
- Linuxaffected: e9800b7994642a794afd4894f072541c14277ce8 before 68665016c7b777b44e27b6b0c1e6524c28ebe40aCVE List
- Linuxaffected: e9800b7994642a794afd4894f072541c14277ce8 before 77ef2aa8b46876ca9935f32dd874c517ccf5d880CVE List
- Linuxaffected: e9800b7994642a794afd4894f072541c14277ce8 before a1dd0817776ea2a870ba2347001af13ddd4cb321CVE List
- Linuxaffected: e9800b7994642a794afd4894f072541c14277ce8 before 2152a13ee2a9af09a668ebd053a8dbf771dadb80CVE List
- Linuxaffected: e9800b7994642a794afd4894f072541c14277ce8 before 2abf99a57b0b71b2b97745981f4039370ab78044CVE List
- Linuxaffected: e9800b7994642a794afd4894f072541c14277ce8 before faf1eb2895c87a8c0fb920439dddc7e0d97c6a69CVE List
- Linuxaffected: e9800b7994642a794afd4894f072541c14277ce8 before 3db30f315935c2fb0d95f46b7a593b5b4d3ec3d0CVE List
- Linuxaffected: 5.14CVE List
- Linuxunaffected: all versions before 5.14CVE List
- Linuxunaffected: 5.15.222 through 5.15.*CVE List
- Linuxunaffected: 6.1.189 through 6.1.*CVE List
- Linuxunaffected: 6.6.158 through 6.6.*CVE List
- Linuxunaffected: 6.12.111 through 6.12.*CVE List
- Linuxunaffected: 6.18.53 through 6.18.*CVE List
- Linuxunaffected: 7.2.7 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List
References 7
- git.kernel.org/stable/c/68665016c7b777b44e27b6b0c1e6524c28ebe40aReferencevia CVE List
- git.kernel.org/stable/c/77ef2aa8b46876ca9935f32dd874c517ccf5d880Referencevia CVE List
- git.kernel.org/stable/c/a1dd0817776ea2a870ba2347001af13ddd4cb321Referencevia CVE List
- git.kernel.org/stable/c/2152a13ee2a9af09a668ebd053a8dbf771dadb80Referencevia CVE List
- git.kernel.org/stable/c/2abf99a57b0b71b2b97745981f4039370ab78044Referencevia CVE List
- git.kernel.org/stable/c/faf1eb2895c87a8c0fb920439dddc7e0d97c6a69Referencevia CVE List
- git.kernel.org/stable/c/3db30f315935c2fb0d95f46b7a593b5b4d3ec3d0Referencevia CVE List