]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit
scsi: qla2xxx: Fix crash due to stale SRB access around I/O timeouts
authorArun Easi <aeasi@marvell.com>
Thu, 16 Jun 2022 05:35:02 +0000 (22:35 -0700)
committerStefan Bader <stefan.bader@canonical.com>
Mon, 17 Oct 2022 09:57:01 +0000 (11:57 +0200)
commit5cf04955c49f5ec57e43c7ccdd9a59143eb6c572
treedfe5a4329e75452dbb2879cd15d408ad2047d1b1
parent1091baa57d0161306f84786465ee3da6320cfffb
scsi: qla2xxx: Fix crash due to stale SRB access around I/O timeouts

BugLink: https://bugs.launchpad.net/bugs/1990162
commit c39587bc0abaf16593f7abcdf8aeec3c038c7d52 upstream.

Ensure SRB is returned during I/O timeout error escalation. If that is not
possible fail the escalation path.

Following crash stack was seen:

BUG: unable to handle kernel paging request at 0000002f56aa90f8
IP: qla_chk_edif_rx_sa_delete_pending+0x14/0x30 [qla2xxx]
Call Trace:
 ? qla2x00_status_entry+0x19f/0x1c50 [qla2xxx]
 ? qla2x00_start_sp+0x116/0x1170 [qla2xxx]
 ? dma_pool_alloc+0x1d6/0x210
 ? mempool_alloc+0x54/0x130
 ? qla24xx_process_response_queue+0x548/0x12b0 [qla2xxx]
 ? qla_do_work+0x2d/0x40 [qla2xxx]
 ? process_one_work+0x14c/0x390

Link: https://lore.kernel.org/r/20220616053508.27186-6-njavali@marvell.com
Fixes: d74595278f4a ("scsi: qla2xxx: Add multiple queue pair functionality.")
Cc: stable@vger.kernel.org
Signed-off-by: Arun Easi <aeasi@marvell.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/scsi/qla2xxx/qla_os.c