CVE-2026-89860

scsi: qla2xxx: Initialize NVMe abort_work once at submission

State
Published
Severity
8.8 High
Published
Sep 16, 2026
Updated
Oct 30, 2026
Reserved
Sep 11, 2026

Read the record on cve.org

Description

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

scsi: qla2xxx: Initialize NVMe abort_work once at submission

qla_nvme_fcp_abort() and qla_nvme_ls_abort() ran INIT_WORK() on priv->abort_work immediately before schedule_work(). INIT_WORK() reinitializes the work_struct, resetting its list head and clearing the pending bit. If an abort is issued more than once for the same command (for example, concurrent transport teardown and a timeout-driven abort), the second INIT_WORK() reinitializes a work item that is already queued, which can corrupt the workqueue list and lead to crashes or a looping worker.

Initialize priv->abort_work once at command submission, next to the existing per-command spin_lock_init(&priv->cmd_lock), and leave only schedule_work() in the abort paths. schedule_work() already does nothing when the work item is still pending, so a repeated abort no longer disturbs an in-flight work item. The command is not returned to the transport until the final kref_put()/release callback runs after abort_work has completed, so the work item is idle before priv is reused and the single submission-time INIT_WORK() is safe.

Scores

CVSSScoreVectorSource
3.18.8 HighCVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • e473b3074104ee09227cfbba5f872e3ea15dd280 to before 6ee4e3774349fa04bba13e668f3322db47d89b08Affected
  • e473b3074104ee09227cfbba5f872e3ea15dd280 to before 55259e225412721c3cc09e4d95a489542c0c05b0Affected
  • e473b3074104ee09227cfbba5f872e3ea15dd280 to before 17d9011c96f819e69074f465c04ee79e693de6a1Affected
  • e473b3074104ee09227cfbba5f872e3ea15dd280 to before b403700ac62fbf3c310196386e125879a182efcfAffected
  • e473b3074104ee09227cfbba5f872e3ea15dd280 to before 6a1b50c4879c2e6a034e8e85f9c055f0eea157c7Affected
  • e473b3074104ee09227cfbba5f872e3ea15dd280 to before 67f0d5187c29360388f7e1e503c627ec45d01089Affected
  • e473b3074104ee09227cfbba5f872e3ea15dd280 to before f4aaa4a4e6f1da6f3abfd80e1917bef922287177Affected
  • e473b3074104ee09227cfbba5f872e3ea15dd280 to before 7e85f6dbc85616de2172bce8eaf84b387a723cd1Affected
LinuxLinux
  • 4.17Affected
  • before 4.17Not affected
  • 5.10.273 through 5.10.*Not affected
  • 5.15.224 through 5.15.*Not affected
  • 6.1.191 through 6.1.*Not affected
  • 6.6.157 through 6.6.*Not affected
  • 6.12.110 through 6.12.*Not affected
  • 6.18.51 through 6.18.*Not affected
  • 7.2.5 through 7.2.*Not affected
  • 7.3 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.