Commit b0cf0b118c90477d1a6811f2cd2307f6a5578362

Authored by Stephen M. Cameron
Committed by Linus Torvalds
1 parent d65226e2bf

cciss: fix incorrect scsi status reporting

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>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Showing 1 changed file with 1 additions and 10 deletions Side-by-side Diff

drivers/block/cciss_scsi.c
... ... @@ -763,16 +763,7 @@
763 763 {
764 764 case CMD_TARGET_STATUS:
765 765 /* Pass it up to the upper layers... */
766   - if( ei->ScsiStatus)
767   - {
768   -#if 0
769   - printk(KERN_WARNING "cciss: cmd %p "
770   - "has SCSI Status = %x\n",
771   - c, ei->ScsiStatus);
772   -#endif
773   - cmd->result |= (ei->ScsiStatus << 1);
774   - }
775   - else { /* scsi status is zero??? How??? */
  766 + if (!ei->ScsiStatus) {
776 767  
777 768 /* Ordinarily, this case should never happen, but there is a bug
778 769 in some released firmware revisions that allows it to happen