2009-12-17 14:22:30

by Stephen M. Cameron

[permalink] [raw]
Subject: [PATCH] hpsa: fix scsi status reporting yet again.

From: Stephen M. Cameron <[email protected]>

hpsa: fix scsi status reporting yet again, reverting an earlier
attempt. The status byte does not need to be shifted << 1. Code
in other drivers that does "scp->result |= CHECK_CONDITION << 1;"
works because CHECK_CONDITION macro is pre-shifted right 1 bit.

Signed-off-by: Stephen M. Cameron <[email protected]>
---
drivers/scsi/hpsa.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index 22bca00..1f4dd27 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -930,7 +930,7 @@ static void complete_scsi_command(struct CommandList *cp,

cmd->result = (DID_OK << 16); /* host byte */
cmd->result |= (COMMAND_COMPLETE << 8); /* msg byte */
- cmd->result |= (ei->ScsiStatus << 1);
+ cmd->result |= ei->ScsiStatus;

/* copy the sense data whether we need to or not. */
memcpy(cmd->sense_buffer, ei->SenseInfo,