# CVE-2026-46022: misc: ibmasm: fix OOB MMIO read in ibmasm_handle_mouse_interrupt()

CVE-2026-46022 is fixed in linux on 1 platform, first by DEBIAN-CVE-2026-46022, released May 27, 2026. It is not reported as exploited. Patch Radar priority: High.

- Web page: https://patchblox.com/security/cve/CVE-2026-46022
- Priority: High
- CVSS: 7.1 (Moderate)
- EPSS: 0.0015
- CISA KEV: not listed
- Exploited (vendor report): no
- Publicly disclosed: no
- Published: May 27, 2026
- Vendor advisory: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-46022

## Description

In the Linux kernel, the following vulnerability has been resolved:  misc: ibmasm: fix OOB MMIO read in ibmasm_handle_mouse_interrupt()  ibmasm_handle_mouse_interrupt() performs an out-of-bounds MMIO read when the queue reader or writer index from hardware exceeds REMOTE_QUEUE_SIZE (60).  A compromised service processor can trigger this by writing an out-of-range value to the reader or writer MMIO register before asserting an interrupt. Since writer is re-read from hardware on every loop iteration, it can also be set to an out-of-range value after the loop has already started.  The root cause is that get_queue_reader() and get_queue_writer() return raw readl() values that are passed directly into get_queue_entry(), which computes:    queue_begin + reader * sizeof(struct remote_input)  with no bounds check. This unchecked MMIO address is then passed to memcpy_fromio(), reading 8 bytes from unintended device registers. For sufficiently large values the address falls outside the PCI BAR mapping entirely, triggering a machine check exception.  Fix by checking both indices against REMOTE_QUEUE_SIZE at the top of the loop body, before any call to get_queue_entry(). On an out-of-range value, reset the reader register to 0 via set_queue_reader() before breaking, so that normal queue operation can resume if the corrupted hardware state is transient.

## Where it's fixed

| Platform | Product | Fixed in | Fix | Released |
|---|---|---|---|---|
| Linux | linux Debian 12.15 (bookworm) | 6.1.176-1 | [DEBIAN-CVE-2026-46022](https://patchblox.com/security/data/fix/linux/debian-cve-2026-46022.md) | May 27, 2026 |
| Linux | linux Debian 13.5 (trixie) | 6.12.86-1 | [DEBIAN-CVE-2026-46022](https://patchblox.com/security/data/fix/linux/debian-cve-2026-46022.md) | May 27, 2026 |
| Linux | linux Debian 14 | 7.0.4-1 | [DEBIAN-CVE-2026-46022](https://patchblox.com/security/data/fix/linux/debian-cve-2026-46022.md) | May 27, 2026 |

---

Data as of 2026-11-08T06:59:42Z UTC. Source: Patchblox Patch Radar (https://patchblox.com/security/patch-radar). Patchblox finds out-of-date software on Windows, macOS and Linux and updates it through release rings: https://patchblox.com/demo

Free to use with attribution: show "Data: Patchblox Patch Radar" with a link to https://patchblox.com/security/patch-radar. Terms, including what needs a written agreement: https://patchblox.com/security/patch-radar/use-the-data

Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.
