CVE-2024-40965 i2c: lpi2c: Avoid calling clk_get_rate during transfer
A race condition in the i2c lpi2c driver causes a deadlock when adding specific audio codecs, leading to system denial of service.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2024-40965?
CVE-2024-40965 is a medium-severity vulnerability in Linux kernel, published on 12 Jul 2024. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
i2c: lpi2c: Avoid calling clk_get_rate during transfer
Instead of repeatedly calling clk_get_rate for each transfer, lock the clock rate and cache the value. A deadlock has been observed while adding tlv320aic32x4 audio codec to the system. When this clock provider adds its clock, the clk mutex is locked already, it needs to access i2c, which in return needs the mutex for clk_get_rate as well.
Weakness: CWE-667
Which versions are affected by CVE-2024-40965?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2024-40965?
Apply the vendor's patch.
Is CVE-2024-40965 being exploited?
There is no known exploitation of CVE-2024-40965 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as AZL-48957, AZL-48969, BELL-CVE-2024-40965, DEBIAN-CVE-2024-40965, GHSA-r49f-c964-6w6w, ROOT-OS-DEBIAN-11-CVE-2024-40965 and 2 more.