diff options
author | Markus Lidel <Markus.Lidel@shadowconnect.com> | 2006-02-05 08:27:39 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-05 20:06:51 +0100 |
commit | e22bec266cd6f540da2a61db216914c3473135cc (patch) | |
tree | 9b84d8ecefa37a63929b34af78ca1b344eaeab49 /drivers | |
parent | [PATCH] block: request_queue->ordcolor must not be flipped on SOFTBARRIER (diff) | |
download | linux-e22bec266cd6f540da2a61db216914c3473135cc.tar.xz linux-e22bec266cd6f540da2a61db216914c3473135cc.zip |
[PATCH] Fix i2o_scsi oops on abort
Fix http://bugzilla.kernel.org/show_bug.cgi?id=5923
When a scsi command failed, an oops would result.
Back-to-back SMART queries would make the Seagate drives unhappy. The
second SMART query would timeout, and the command would be aborted.
Acked-by: Markus Lidel <Markus.Lidel@shadowconnect.com>
Cc: Kenny Simpson <theonetruekenny@yahoo.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/message/i2o/i2o_scsi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/message/i2o/i2o_scsi.c b/drivers/message/i2o/i2o_scsi.c index f9e5a23697a1..c08ddac3717d 100644 --- a/drivers/message/i2o/i2o_scsi.c +++ b/drivers/message/i2o/i2o_scsi.c @@ -732,7 +732,7 @@ static int i2o_scsi_abort(struct scsi_cmnd *SCpnt) cpu_to_le32(I2O_CMD_SCSI_ABORT << 24 | HOST_TID << 12 | tid); msg->body[0] = cpu_to_le32(i2o_cntxt_list_get_ptr(c, SCpnt)); - if (i2o_msg_post_wait(c, msg, I2O_TIMEOUT_SCSI_SCB_ABORT)) + if (!i2o_msg_post_wait(c, msg, I2O_TIMEOUT_SCSI_SCB_ABORT)) status = SUCCESS; return status; |