From 96464ce5455afb3189ab57c3eb049df596fb7570 Mon Sep 17 00:00:00 2001 From: Pete Zaitcev Date: Sat, 19 Apr 2008 14:35:30 -0700 Subject: [PATCH] --- yaml --- r: 95783 b: refs/heads/master c: 82fe26ba7a21d9bcc77e6142c941683eede32940 h: refs/heads/master i: 95781: 1fe033a80886222aa9e683c13b74614a5480d72b 95779: bbd700f1535026bf5e1822c083927dfab486f3c7 95775: 95b0238e00476a9841442bdb2c782cb16452342d v: v3 --- [refs] | 2 +- trunk/drivers/block/ub.c | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 09d07d73d5e2..5fdaf0ea2bd2 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2c51ae70ede5a90d8ccb67d965c1b4e20fc4e110 +refs/heads/master: 82fe26ba7a21d9bcc77e6142c941683eede32940 diff --git a/trunk/drivers/block/ub.c b/trunk/drivers/block/ub.c index b87ad77e5bb5..5c6a6e89d2fb 100644 --- a/trunk/drivers/block/ub.c +++ b/trunk/drivers/block/ub.c @@ -792,10 +792,6 @@ static void ub_rw_cmd_done(struct ub_dev *sc, struct ub_scsi_cmd *cmd) scsi_status = 0; } else { if (cmd->act_len != cmd->len) { - if ((cmd->key == MEDIUM_ERROR || - cmd->key == UNIT_ATTENTION) && - ub_rw_cmd_retry(sc, lun, urq, cmd) == 0) - return; scsi_status = SAM_STAT_CHECK_CONDITION; } else { scsi_status = 0; @@ -811,7 +807,10 @@ static void ub_rw_cmd_done(struct ub_dev *sc, struct ub_scsi_cmd *cmd) else scsi_status = DID_ERROR << 16; } else { - if (cmd->error == -EIO) { + if (cmd->error == -EIO && + (cmd->key == 0 || + cmd->key == MEDIUM_ERROR || + cmd->key == UNIT_ATTENTION)) { if (ub_rw_cmd_retry(sc, lun, urq, cmd) == 0) return; }