aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorStephen M. Cameron <scameron@beardog.cce.hp.com>2011-10-26 16:21:17 -0500
committerJames Bottomley <JBottomley@Parallels.com>2011-10-30 14:34:27 +0400
commitbb158eabda984851d7964d968b9859383f98a701 (patch)
tree3c40b4d8a1b9c6a2cd036903c09afcc26fdb311b /drivers/scsi
parent[SCSI] hpsa: fix potential array overflow in hpsa_update_scsi_devices (diff)
downloadlinux-dev-bb158eabda984851d7964d968b9859383f98a701.tar.xz
linux-dev-bb158eabda984851d7964d968b9859383f98a701.zip
[SCSI] hpsa: fix flush cache transfer length
We weren't filling in the transfer length of the flush cache command (it transfers 4 bytes of zeroes). Firmware didn't seem to be bothered by this, but it should be fixed. Signed-off-by: Stephen M. Cameron <scameron@beardog.cce.hp.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/hpsa.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index f3fd9f1711f7..57ed00f7050a 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -2876,6 +2876,8 @@ static void fill_cmd(struct CommandList *c, u8 cmd, struct ctlr_info *h,
c->Request.Timeout = 0;
c->Request.CDB[0] = BMIC_WRITE;
c->Request.CDB[6] = BMIC_CACHE_FLUSH;
+ c->Request.CDB[7] = (size >> 8) & 0xFF;
+ c->Request.CDB[8] = size & 0xFF;
break;
case TEST_UNIT_READY:
c->Request.CDBLen = 6;