[SCSI] qla4xxx: Wait for disable_acb before doing set_acb
In function qla4xxx_iface_set_param wait for disable_acb to complete so that set_acb will not fail. Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
parent
8e0f3a66a2
commit
ce505f9d1d
1 changed files with 10 additions and 1 deletions
|
@ -935,7 +935,16 @@ qla4xxx_iface_set_param(struct Scsi_Host *shost, void *data, uint32_t len)
|
||||||
goto exit_init_fw_cb;
|
goto exit_init_fw_cb;
|
||||||
}
|
}
|
||||||
|
|
||||||
qla4xxx_disable_acb(ha);
|
rval = qla4xxx_disable_acb(ha);
|
||||||
|
if (rval != QLA_SUCCESS) {
|
||||||
|
ql4_printk(KERN_ERR, ha, "%s: disable acb mbx failed\n",
|
||||||
|
__func__);
|
||||||
|
rval = -EIO;
|
||||||
|
goto exit_init_fw_cb;
|
||||||
|
}
|
||||||
|
|
||||||
|
wait_for_completion_timeout(&ha->disable_acb_comp,
|
||||||
|
DISABLE_ACB_TOV * HZ);
|
||||||
|
|
||||||
qla4xxx_initcb_to_acb(init_fw_cb);
|
qla4xxx_initcb_to_acb(init_fw_cb);
|
||||||
|
|
||||||
|
|
Reference in a new issue