aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block
diff options
context:
space:
mode:
authorStephen M. Cameron <scameron@beardog.cce.hp.com>2012-08-21 16:15:49 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-09-14 10:00:39 -0700
commit06c74870973dff9bab05bec510cec74ba80c26c5 (patch)
treead3b9a72cec0c9dd3464c1f16908fcda8129e0bb /drivers/block
parentb8e52a4288c0c1a66c60e92fc57fd3d5e3918da0 (diff)
downloadkernel_samsung_smdk4412-06c74870973dff9bab05bec510cec74ba80c26c5.zip
kernel_samsung_smdk4412-06c74870973dff9bab05bec510cec74ba80c26c5.tar.gz
kernel_samsung_smdk4412-06c74870973dff9bab05bec510cec74ba80c26c5.tar.bz2
cciss: fix incorrect scsi status reporting
commit b0cf0b118c90477d1a6811f2cd2307f6a5578362 upstream. Delete code which sets SCSI status incorrectly as it's already been set correctly above this incorrect code. The bug was introduced in 2009 by commit b0e15f6db111 ("cciss: fix typo that causes scsi status to be lost.") Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Reported-by: Roel van Meer <roel.vanmeer@bokxing.nl> Tested-by: Roel van Meer <roel.vanmeer@bokxing.nl> Cc: Jens Axboe <axboe@kernel.dk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/block')
-rw-r--r--drivers/block/cciss_scsi.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/drivers/block/cciss_scsi.c b/drivers/block/cciss_scsi.c
index a552cab..3796fcc 100644
--- a/drivers/block/cciss_scsi.c
+++ b/drivers/block/cciss_scsi.c
@@ -763,16 +763,7 @@ static void complete_scsi_command(CommandList_struct *c, int timeout,
{
case CMD_TARGET_STATUS:
/* Pass it up to the upper layers... */
- if( ei->ScsiStatus)
- {
-#if 0
- printk(KERN_WARNING "cciss: cmd %p "
- "has SCSI Status = %x\n",
- c, ei->ScsiStatus);
-#endif
- cmd->result |= (ei->ScsiStatus << 1);
- }
- else { /* scsi status is zero??? How??? */
+ if (!ei->ScsiStatus) {
/* Ordinarily, this case should never happen, but there is a bug
in some released firmware revisions that allows it to happen