CVEvulnerability
CVE-2026-89440
7.8 HIGH
Official page ↗
- Status
- Received
- Published
- 2026-09-11
- Last modified
- 2026-10-19
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 (416baaa9-dc9f-4396-8d5f-8c081fb06d67)
- 7.8 HIGH — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Description
In the Linux kernel, the following vulnerability has been resolved:
mmc: via-sdmmc: stop card-detect handling on probe failure
request_irq() registers the SD card-detect interrupt and the probe enables
it before mmc_add_host() runs. If mmc_add_host() fails, the error path only
unmaps the registers and returns: the interrupt stays registered, so the
handler keeps running against the host once it is freed. via_sdc_isr()
dereferences sdhost and its MMIO base and schedules carddet_work, which
via_sdc_card_detect() also runs against freed memory through its
container_of() dereference.
Add a probe-error path that disables and frees the interrupt and cancels
carddet_work before unmapping. carddet_work can re-enable the device
interrupt via via_reset_pcictrl(), which restores PCIINTCTRL, so mask it
again after cancelling the work.
This issue was found by an in-house static analysis tool and confirmed by
manual code review.
References
- https://git.kernel.org/stable/c/088eaa92fcebaa6b957ccf9635afdf39643a577d git.kernel.org
- https://git.kernel.org/stable/c/2550f89589caad7402d618d7dffc038582c94b6b git.kernel.org
- https://git.kernel.org/stable/c/5bb5327b92aae17e91c7228953c350a6ee3c94e8 git.kernel.org
- https://git.kernel.org/stable/c/806409f12fdb14c9e4c56a64494c9b75f356cd49 git.kernel.org
- https://git.kernel.org/stable/c/c2b8a624911999399cc14822fec3e35032b3cee4 git.kernel.org
- https://git.kernel.org/stable/c/d045596706d1b25d38af4a79980b017639fea9d1 git.kernel.org
- https://git.kernel.org/stable/c/dde5b9c91e9fc64e54a2f186d3ae95868b4dbb02 git.kernel.org
- https://git.kernel.org/stable/c/efe7f25dd27e35063477b4b0e7eed3675669fd99 git.kernel.org