CVE-2026-74754

scsi: core: pair EH runtime PM get and put

State
Published
Severity
Not scored
Published
Aug 26, 2026
Updated
Oct 30, 2026
Reserved
Aug 15, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

scsi: core: pair EH runtime PM get and put

shost->eh_noresume is currently consulted twice in one error handling iteration: once before scsi_autopm_get_host() and once again before scsi_autopm_put_host().

That is racy when a PM-triggered error path flips shost->eh_noresume while the SCSI EH thread is still running.

The problem flow looks like this: PM path ufshcd_set_dev_pwr_mode() shost->eh_noresume = 1 ufshcd_execute_start_stop <-- trigger EH ... shost->eh_noresume = 0

EH path scsi_error_handler() if (!shost->eh_noresume) scsi_autopm_get_host() <-- skipped ... if (!shost->eh_noresume) scsi_autopm_put_host() <-- executed later

In that case one EH iteration can skip autoresume on entry and still drop a runtime PM reference on exit. That leaves an unmatched runtime PM put and can trigger a runtime PM usage count underflow.

Fix this by making eh_noresume a regular bool so it can be accessed with READ_ONCE() and WRITE_ONCE(). Snapshot it once per EH iteration and use that snapshot for both runtime PM get and put decisions.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • ae0751ffc77e7f21629970fdab5528c573e637f8 to before 9aca00c74730f4bc12d0717d33db637a16ccdfeaAffected
  • ae0751ffc77e7f21629970fdab5528c573e637f8 to before 1ec5f6aa38ea990af37c49af7a4bb3db00da7f9dAffected
  • ae0751ffc77e7f21629970fdab5528c573e637f8 to before 0038a2a75a15d163f428c93103c6d02d4d231a7aAffected
  • ae0751ffc77e7f21629970fdab5528c573e637f8 to before fdc93f4a801077efbf1b87570ade8d8f325de62fAffected
  • ae0751ffc77e7f21629970fdab5528c573e637f8 to before e83eed1bea142c8fe852fd53156845b88252ecd8Affected
  • ae0751ffc77e7f21629970fdab5528c573e637f8 to before 872f486259ae0bc6b73ca4735a15d013241f73e9Affected
LinuxLinux
  • 3.3Affected
  • before 3.3Not affected
  • 6.1.191 through 6.1.*Not affected
  • 6.6.160 through 6.6.*Not affected
  • 6.12.114 through 6.12.*Not affected
  • 6.18.57 through 6.18.*Not affected
  • 7.1.10 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.