CVE-2026-23110: scsi: core: Wake up the error handler when final completions race against each other
In the Linux kernel, the following vulnerability has been resolved:
scsi: core: Wake up the error handler when final completions race against each other
The fragile ordering between marking commands completed or failed so that the error handler only wakes when the last running command completes or times out has race conditions. These race conditions can cause the SCSI layer to fail to wake the error handler, leaving I/O through the SCSI host stuck as the error state cannot advance.
First, there is an memory ordering issue within scsidechostbusy(). The write which clears SCMDSTATEINFLIGHT may be reordered with reads counting in scsihostbusy(). While the local CPU will see its own write, reordering can allow other CPUs in scsidechostbusy() or scsiehinchostfailed() to see a raised busy count, causing no CPU to see a host busy equal to the hostfailed count.
This race condition can be prevented with a memory barrier on the error path to force the write to be visible before counting host busy commands.
Second, there is a general ordering issue with scsiehinchostfailed(). By counting busy commands before incrementing hostfailed, it can race with a final command in scsidechostbusy(), such that scsidechostbusy() does not see hostfailed incremented but scsiehinchostfailed() counts busy commands before SCMDSTATEINFLIGHT is cleared by scsidechostbusy(), resulting in neither waking the error handler task.
This needs the call to scsihostbusy() to be moved after hostfailed is incremented to close the race condition.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-23110?
CVE-2026-23110 is classified as a moderate severity vulnerability affecting the SCSI core in the Linux kernel.
What systems are affected by CVE-2026-23110?
CVE-2026-23110 affects the Linux kernel, particularly versions that contain the relevant SCSI core handling code.
How do I fix CVE-2026-23110?
To fix CVE-2026-23110, you should update to the latest patched version of the Linux kernel provided by your distribution.
What does CVE-2026-23110 exploit, and what is its impact?
CVE-2026-23110 exploits a race condition in error handling within the SCSI core, potentially leading to data corruption.
Are there any workarounds for CVE-2026-23110?
Currently, no specific workarounds are recommended for CVE-2026-23110 other than applying the appropriate kernel security updates.