From: Stephen M. Cameron Date: Tue, 14 Aug 2012 03:22:24 +0000 (+1000) Subject: cciss: fix incorrect scsi status reporting X-Git-Tag: next-20120820~1^2~63 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=ec8d2eef0a40c9fd1ac97c7a40ab5d2091ad56a0;p=karo-tx-linux.git cciss: fix incorrect scsi status reporting Delete code which sets SCSI status incorrectly as it's already been set correctly above this incorrect code. Bug was introduced by b0e15f6db1110 ("cciss: fix typo that causes scsi status to be lost.") in 2009. Signed-off-by: Stephen M. Cameron Reported-by: Roel van Meer Tested-by: Roel van Meer Cc: Jens Axboe Cc: Signed-off-by: Andrew Morton --- diff --git a/drivers/block/cciss_scsi.c b/drivers/block/cciss_scsi.c index acda773b3720..38aa6dda6b81 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