summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Hutchings <ben@decadent.org.uk>2013-05-27 19:07:19 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-07-13 11:42:27 -0700
commit312cf3e4cf531e1f729624464bce7542025f7cbe (patch)
treee876132520446d9a1e5d8cbac1535ce088f0eb81
parent096bff23937209645162a7fc5e70246cb5c60336 (diff)
downloadlinux-3.10-312cf3e4cf531e1f729624464bce7542025f7cbe.tar.gz
linux-3.10-312cf3e4cf531e1f729624464bce7542025f7cbe.tar.bz2
linux-3.10-312cf3e4cf531e1f729624464bce7542025f7cbe.zip
SCSI: sd: Fix parsing of 'temporary ' cache mode prefix
commit 2ee3e26c673e75c05ef8b914f54fadee3d7b9c88 upstream. Commit 39c60a0948cc '[SCSI] sd: fix array cache flushing bug causing performance problems' added temp as a pointer to "temporary " and used sizeof(temp) - 1 as its length. But sizeof(temp) is the size of the pointer, not the size of the string constant. Change temp to a static array so that sizeof() does what was intended. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: James Bottomley <JBottomley@Parallels.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/scsi/sd.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
index c1c555242d0..6f6a1b48f99 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
@@ -142,7 +142,7 @@ sd_store_cache_type(struct device *dev, struct device_attribute *attr,
char *buffer_data;
struct scsi_mode_data data;
struct scsi_sense_hdr sshdr;
- const char *temp = "temporary ";
+ static const char temp[] = "temporary ";
int len;
if (sdp->type != TYPE_DISK)