]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
[PATCH] Fix i2o_scsi oops on abort
authorMarkus Lidel <Markus.Lidel@shadowconnect.com>
Thu, 19 Jan 2006 22:03:04 +0000 (14:03 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 31 Jan 2006 06:13:18 +0000 (22:13 -0800)
>From 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.

From: Markus Lidel <Markus.Lidel@shadowconnect.com>
Cc: Kenny Simpson <theonetruekenny@yahoo.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/message/i2o/i2o_scsi.c

index 9f1744c3933b8b258b61128d83577e6a188c11bd..1c5c6c753ffcb84d1476241c70e264a6f424102e 100644 (file)
@@ -729,7 +729,7 @@ static int i2o_scsi_abort(struct scsi_cmnd *SCpnt)
               &msg->u.head[1]);
        writel(i2o_cntxt_list_get_ptr(c, SCpnt), &msg->body[0]);
 
-       if (i2o_msg_post_wait(c, m, I2O_TIMEOUT_SCSI_SCB_ABORT))
+       if (!i2o_msg_post_wait(c, msg, I2O_TIMEOUT_SCSI_SCB_ABORT))
                status = SUCCESS;
 
        return status;