Skip to main content
← All vulnerabilities
CVE-2026-89623

HID: mcp2221: stop device IO before hid_hw_stop

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 6.6.157, 6.12.109, 6.18.50, 7.2.4, 7.3
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: HID: mcp2221: stop device IO before hid_hw_stop Quiesce device IO at the start of the devm cleanup callback mcp2221_hid_unregister() so that incoming HID reports cannot race with hardware teardown during probe failure or device removal, addressing a potential use-after-free. Guard the call to hid_device_io_stop() with io_started. On normal removal hid_device_remove() has already cleared io_started before the devres group is released, so an unconditional call would otherwise hit the !io_started path and emit a spurious "io already stopped" warning on every removal. The guard preserves the probe-failure balancing, where io_started is still set after hid_device_io_start(), while staying silent on the normal removal path.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From d4b50ac06ea6e47bdd2b04e97d1090c673c80645 · fixed in 85d963499f1feeea287c0a37c3eac3fc1898eca9; From 73ce9f1f2741a38f5d27393e627702ae2c46e6f2 · fixed in 0ae90a19e6b5a8557d25d95facb7e01c9c07af38; From 73ce9f1f2741a38f5d27393e627702ae2c46e6f2 · fixed in c99ba6c234d4d537c317336376b78c088174034a; From 73ce9f1f2741a38f5d27393e627702ae2c46e6f2 · fixed in 2eda1513f573945c1e3a0090341f3d28740463b1; From 73ce9f1f2741a38f5d27393e627702ae2c46e6f2 · fixed in dca151633c0fde90935311c60e7cfc064aa56134; From 6.6.8 · fixed in 6.6.157

  • Linux Linux

    6.7

  • KernelLinux

    From 6.6.8 · fixed in 6.6.157; fixed in 6.12.109; fixed in 6.18.50; fixed in 7.2.4; fixed in 7.3

References 5

git.kernel.org