CVE-2026-97536

CVE-2026-97536

High · published September 25, 2026

CVSS v3.1
7.5
EPSS
0%
Percentile
19.8
In the wild
Unconfirmed
What it is

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

scsi: qla2xxx: Fix use-after-free of qpair work on queue teardown

The response queue MSI-X handler qla2xxx_msix_rsp_q() schedules

qla_do_work() via queue_work(ha->wq, &qpair->q_work). qla_do_work()

dereferences the qpair (vha, rsp) and takes qpair->qp_lock.

During teardown, qla2xxx_delete_qpair() deletes the response queue, which

calls free_irq() in qla25xx_free_rsp_que(), and then frees the queue and

the qpair. free_irq() waits for running hardirq handlers but does not

cancel work already placed on ha->wq. A still-pending q_work then runs

qla_do_work() against the freed qpair and response queue, causing a

use-after-free. This is especially likely during full adapter teardown,

where destroy_workqueue(ha->wq) forces pending work to run after the queue

pairs have been freed.

Flush the work item with cancel_work_sync() in qla25xx_free_rsp_que()

after free_irq() has released the interrupt (so no new work can be

queued) and before the response queue and qpair memory are freed (so the

flushed handler still sees valid memory). Guard on rsp->qpair and ha->wq

to match the INIT_WORK() condition and avoid operating on an

uninitialized work_struct.

The record
Technical detail
CVSS v3.1
7.5 · HIGH
Vector
CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00284 · 19.8th percentile
Published
2026-09-25T15:17Z
References (5)
EPSS history
Timeline
  • 27 SEP 03:28Z
    EPSS moved — → 0%
    epss
  • 25 SEP 10:21Z
    scsi: qla2xxx: Fix use-after-free of qpair work on queue teardown
    cvelistv5