forked from luck/tmp_suning_uos_patched
[SCSI] libiscsi: Use SCSI_MLQUEUE_TARGET_BUSY
For the conditions below we do not want the queuecommand function to call us right back, so return SCSI_MLQUEUE_TARGET_BUSY. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
parent
7b594131c4
commit
d6d13ee19d
@ -1194,12 +1194,10 @@ int iscsi_queuecommand(struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *))
|
||||
switch (session->state) {
|
||||
case ISCSI_STATE_IN_RECOVERY:
|
||||
reason = FAILURE_SESSION_IN_RECOVERY;
|
||||
sc->result = DID_IMM_RETRY << 16;
|
||||
break;
|
||||
goto reject;
|
||||
case ISCSI_STATE_LOGGING_OUT:
|
||||
reason = FAILURE_SESSION_LOGGING_OUT;
|
||||
sc->result = DID_IMM_RETRY << 16;
|
||||
break;
|
||||
goto reject;
|
||||
case ISCSI_STATE_RECOVERY_FAILED:
|
||||
reason = FAILURE_SESSION_RECOVERY_TIMEOUT;
|
||||
sc->result = DID_NO_CONNECT << 16;
|
||||
@ -1267,7 +1265,7 @@ int iscsi_queuecommand(struct scsi_cmnd *sc, void (*done)(struct scsi_cmnd *))
|
||||
spin_unlock(&session->lock);
|
||||
debug_scsi("cmd 0x%x rejected (%d)\n", sc->cmnd[0], reason);
|
||||
spin_lock(host->host_lock);
|
||||
return SCSI_MLQUEUE_HOST_BUSY;
|
||||
return SCSI_MLQUEUE_TARGET_BUSY;
|
||||
|
||||
fault:
|
||||
spin_unlock(&session->lock);
|
||||
|
Loading…
Reference in New Issue
Block a user