summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_inline.h
diff options
context:
space:
mode:
authorChad Dupuis2013-02-08 07:57:50 +0100
committerJames Bottomley2013-02-22 13:35:40 +0100
commitb00ee7d770abbe1e63df74eada0376c75ceb2daf (patch)
tree65a6889fe5d365b777d8cb5b88790c84aa1280b5 /drivers/scsi/qla2xxx/qla_inline.h
parent[SCSI] qla2xxx: Do MPI reset only for ISP81xx. (diff)
downloadkernel-qcow2-linux-b00ee7d770abbe1e63df74eada0376c75ceb2daf.tar.gz
kernel-qcow2-linux-b00ee7d770abbe1e63df74eada0376c75ceb2daf.tar.xz
kernel-qcow2-linux-b00ee7d770abbe1e63df74eada0376c75ceb2daf.zip
[SCSI] qla2xxx: Unload hangs after issuing BSG commands to vport.
BSG code path increments ref count in the send path, but does not decrement in the return path leading to hang during unload of the driver. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_inline.h')
-rw-r--r--drivers/scsi/qla2xxx/qla_inline.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/scsi/qla2xxx/qla_inline.h b/drivers/scsi/qla2xxx/qla_inline.h
index deb8618d1b81..130f6f3c2a97 100644
--- a/drivers/scsi/qla2xxx/qla_inline.h
+++ b/drivers/scsi/qla2xxx/qla_inline.h
@@ -198,6 +198,13 @@ done:
}
static inline void
+qla2x00_rel_sp(scsi_qla_host_t *vha, srb_t *sp)
+{
+ mempool_free(sp, vha->hw->srb_mempool);
+ QLA_VHA_MARK_NOT_BUSY(vha);
+}
+
+static inline void
qla2x00_init_timer(srb_t *sp, unsigned long tmo)
{
init_timer(&sp->u.iocb_cmd.timer);