Commit 3cb182b3 authored by Rodrigo R. Galvao's avatar Rodrigo R. Galvao Committed by Martin K. Petersen

scsi: qla2xxx: Fix crash on qla2x00_mailbox_command

This patch fixes a crash on qla2x00_mailbox_command caused when the driver
is on UNLOADING state and tries to call qla2x00_poll, which triggers a
NULL pointer dereference.
Signed-off-by: default avatarRodrigo R. Galvao <rosattig@linux.vnet.ibm.com>
Signed-off-by: default avatarMauro S. M. Rodrigues <maurosr@linux.vnet.ibm.com>
Acked-by: default avatarHimanshu Madhani <himanshu.madhani@cavium.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent e73c864b
...@@ -292,6 +292,14 @@ qla2x00_mailbox_command(scsi_qla_host_t *vha, mbx_cmd_t *mcp) ...@@ -292,6 +292,14 @@ qla2x00_mailbox_command(scsi_qla_host_t *vha, mbx_cmd_t *mcp)
if (time_after(jiffies, wait_time)) if (time_after(jiffies, wait_time))
break; break;
/*
* Check if it's UNLOADING, cause we cannot poll in
* this case, or else a NULL pointer dereference
* is triggered.
*/
if (unlikely(test_bit(UNLOADING, &base_vha->dpc_flags)))
return QLA_FUNCTION_TIMEOUT;
/* Check for pending interrupts. */ /* Check for pending interrupts. */
qla2x00_poll(ha->rsp_q_map[0]); qla2x00_poll(ha->rsp_q_map[0]);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment