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 scsi_dec_host_busy().
The write which clears SCMD_STATE_INFLIGHT may be reordered with reads
counting in scsi_host_busy(). While the local CPU will see its own
write, reordering can allow other CPUs in scsi_dec_host_busy() or
scsi_eh_inc_host_failed() to see a raised busy count, causing no CPU to
see a host busy equal to the host_failed 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 scsi_eh_inc_host_failed(). By
counting busy commands before incrementing host_failed, it can race with a
final command in scsi_dec_host_busy(), such that scsi_dec_host_busy() does
not see host_failed incremented but scsi_eh_inc_host_failed() counts busy
commands before SCMD_STATE_INFLIGHT is cleared by scsi_dec_host_busy(),
resulting in neither waking the error handler task.
This needs the call to scsi_host_busy() to be moved after host_failed is
incremented to close the race condition.
Security readout for executives and security teams
Plain-English summary
A Linux SCSI race condition can prevent the storage error-handling process from waking. When triggered, input/output through an affected SCSI host may remain stuck because recovery cannot progress. This is primarily an availability and operational resilience concern; the supplied evidence does not describe data theft, privilege escalation, or code execution.
Executive priority
Treat this as a reliability patch with potentially serious service impact on storage-dependent workloads. Expedite vendor assessment and staged remediation for critical infrastructure, but do not classify it as an emergency security incident without evidence of exposure or exploitation.
Technical view
Concurrent final command completions can leave neither path responsible for waking the SCSI error handler. One race involves visibility of SCMD_STATE_INFLIGHT clearing before host-busy counting; another counts busy commands before incrementing host_failed. The kernel changes add ordering protection and move busy counting after the failure increment.
Likely exposure
The bundle identifies Linux kernel versions 5.5, 5.10.249, 6.1.162, 6.6.122, 6.12.68, 6.18.8, and 6.19 as affected, but its version representation is ambiguous. Prioritize systems dependent on SCSI-backed storage and confirm exact exposure against distribution or vendor advisories and backport records.
Exploitation context
The supplied record is not in KEV and provides no evidence of active exploitation. Triggering depends on timing-sensitive concurrency during SCSI command completion and error handling. The sources do not establish remote reachability, attacker-controlled prerequisites, reliable reproduction, or confidentiality and integrity impact.
Researcher notes
The central invariant is that the error handler must wake when host-busy and host-failed accounting converge. The fixes address cross-CPU memory visibility in scsi_dec_host_busy() and reorder scsi_eh_inc_host_failed(). The bundle supplies no CVSS score, CWE, trigger proof, or exploitability assessment, limiting severity confidence.
Mitigation direction
Apply the appropriate vendor-supported kernel update containing the listed stable fix or an equivalent backport.
Check Linux distribution and appliance vendor advisories for exact affected builds and update guidance.
Prioritize storage-critical systems where stalled SCSI recovery could interrupt production services.
Use normal change controls and storage workload testing before deploying kernel updates broadly.
Validation and detection
Record running kernel builds and identify systems using SCSI hosts or SCSI-backed storage.
Verify the installed kernel contains the relevant stable commit or a documented vendor backport.
Review monitoring and logs for stuck I/O, stalled recovery, or SCSI error-handler anomalies.
Test SCSI error recovery safely in staging after updating; avoid inducing faults on production systems.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2026-23110 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.