diff options
author | Sumant Patro <sumantp@lsil.com> | 2007-02-14 16:00:55 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2007-02-16 11:43:41 -0500 |
commit | 02b01e010afeeb49328d35650d70721d2ca3fd59 (patch) | |
tree | 28163befce75d3ebbbfa84a0acf9f85f5bb95675 /drivers/scsi/megaraid/megaraid_sas.c | |
parent | 9f35fa8a14e6216a859e2dfbe50ade497f9603ef (diff) |
[SCSI] megaraid_sas: return sync cache call with success
FW does not support SYNCHRONIZE_CACHE cmd. FW flush cache on its own.
So, we just return success from the megasas_queue_command.
Signed-off-by: Sumant Patro <sumant.patro@lsi.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/megaraid/megaraid_sas.c')
-rw-r--r-- | drivers/scsi/megaraid/megaraid_sas.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas.c b/drivers/scsi/megaraid/megaraid_sas.c index 4070894ed5f..01eb9b5870b 100644 --- a/drivers/scsi/megaraid/megaraid_sas.c +++ b/drivers/scsi/megaraid/megaraid_sas.c | |||
@@ -856,6 +856,18 @@ megasas_queue_command(struct scsi_cmnd *scmd, void (*done) (struct scsi_cmnd *)) | |||
856 | goto out_done; | 856 | goto out_done; |
857 | } | 857 | } |
858 | 858 | ||
859 | switch (scmd->cmnd[0]) { | ||
860 | case SYNCHRONIZE_CACHE: | ||
861 | /* | ||
862 | * FW takes care of flush cache on its own | ||
863 | * No need to send it down | ||
864 | */ | ||
865 | scmd->result = DID_OK << 16; | ||
866 | goto out_done; | ||
867 | default: | ||
868 | break; | ||
869 | } | ||
870 | |||
859 | cmd = megasas_get_cmd(instance); | 871 | cmd = megasas_get_cmd(instance); |
860 | if (!cmd) | 872 | if (!cmd) |
861 | return SCSI_MLQUEUE_HOST_BUSY; | 873 | return SCSI_MLQUEUE_HOST_BUSY; |