CVE-2026-64083
CVE.org · Published
- Record status
- Published
- Identifier year (not publication year)
- 2026
- Source publication
- Source updated
- Imported by cveboard
- Source snapshot
- cve_2026-10-24_midnight_baseline ·
CNA source text (English)
hwmon: (pmbus/adm1266) reject short block-read responses in the GPIO accessors
In the Linux kernel, the following vulnerability has been resolved: hwmon: (pmbus/adm1266) reject short block-read responses in the GPIO accessors adm1266_gpio_get() and adm1266_gpio_get_multiple() both compose the pin-status word as pins_status = read_buf[0] + (read_buf[1] << 8); right after i2c_smbus_read_block_data(), guarding only against an error return. A well-behaved device returns 2 bytes for GPIO_STATUS/PDIO_STATUS, but the helper happily reports a 0- or 1-byte response too. If the device returns 0 bytes, both read_buf slots are uninitialized stack memory; if it returns 1 byte, read_buf[1] is. The composed value then flows through set_bit() into the caller's *bits in adm1266_gpio_get_multiple(), or into the return value of adm1266_gpio_get(), and ends up in userspace via gpiolib (sysfs and the char-dev ioctls). That leaks a few bits of kernel stack per request on any device whose firmware glitch, bus error, or hostile slave produces a short block-read response. Add the missing length check to both call sites and surface a short response as -EIO.
Scoped product and version facts
Fix information unknown; no fixed version is derived here. Missing information does not prove that no fix exists.
Exploitation unknown; this catalogue does not assess exploitation.
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
unaffected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| d98dfad35c38c037b37c4adc99df01da571031a5 | affected | git | fd9196aad9e5a3845cea17de3405ebc700382142 | Unavailable | None listed |
| d98dfad35c38c037b37c4adc99df01da571031a5 | affected | git | ee4799becf7d2af3778007e22c2e55c4009a49c7 | Unavailable | None listed |
| d98dfad35c38c037b37c4adc99df01da571031a5 | affected | git | c603b6c6840ac0c6285f5eefea0de6242710af21 | Unavailable | None listed |
| d98dfad35c38c037b37c4adc99df01da571031a5 | affected | git | a2d1c819348b36fccbbfcf37c5fa7a50a9b4528f | Unavailable | None listed |
| d98dfad35c38c037b37c4adc99df01da571031a5 | affected | git | ae25cf2ea9ebd06d7ad416647dbdc7b5d0172946 | Unavailable | None listed |
| d98dfad35c38c037b37c4adc99df01da571031a5 | affected | git | eb3cd9bb590460c6127145cb245be925d23f5232 | Unavailable | None listed |
| d98dfad35c38c037b37c4adc99df01da571031a5 | affected | git | 64fa9328948ddcc0f7f3c23ea1756c126d9dffac | Unavailable | None listed |
| d98dfad35c38c037b37c4adc99df01da571031a5 | affected | git | a7232f68c43ca62f545049b7f5fbfc75137b843b | Unavailable | None listed |
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
affected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 5.10 | affected | Unavailable | Unavailable | Unavailable | None listed |
| 0 | unaffected | semver | 5.10 | Unavailable | None listed |
| 5.10.258 | unaffected | semver | Unavailable | 5.10.* | None listed |
| 5.15.209 | unaffected | semver | Unavailable | 5.15.* | None listed |
| 6.1.175 | unaffected | semver | Unavailable | 6.1.* | None listed |
| 6.6.142 | unaffected | semver | Unavailable | 6.6.* | None listed |
| 6.12.92 | unaffected | semver | Unavailable | 6.12.* | None listed |
| 6.18.34 | unaffected | semver | Unavailable | 6.18.* | None listed |
| 7.0.11 | unaffected | semver | Unavailable | 7.0.* | None listed |
| 7.1 | unaffected | original_commit_for_fix | Unavailable | * | None listed |