CVE-2024-35997

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
20/05/2024
Last modified:
16/01/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> HID: i2c-hid: remove I2C_HID_READ_PENDING flag to prevent lock-up<br /> <br /> The flag I2C_HID_READ_PENDING is used to serialize I2C operations.<br /> However, this is not necessary, because I2C core already has its own<br /> locking for that.<br /> <br /> More importantly, this flag can cause a lock-up: if the flag is set in<br /> i2c_hid_xfer() and an interrupt happens, the interrupt handler<br /> (i2c_hid_irq) will check this flag and return immediately without doing<br /> anything, then the interrupt handler will be invoked again in an<br /> infinite loop.<br /> <br /> Since interrupt handler is an RT task, it takes over the CPU and the<br /> flag-clearing task never gets scheduled, thus we have a lock-up.<br /> <br /> Delete this unnecessary flag.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.8 (including) 4.19.313 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.20 (including) 5.4.275 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.5 (including) 5.10.216 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (including) 5.15.158 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.16 (including) 6.1.90 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 (including) 6.6.30 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.8.9 (excluding)