diff options
author | Martin K. Petersen <martin.petersen@oracle.com> | 2009-01-04 03:04:33 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-01-05 10:05:24 -0500 |
commit | becce74b8231f8b5e51165e797f6c950d1dbcf67 (patch) | |
tree | 93ed435a2e50fa238191d90d26f9c79fc0373ca9 | |
parent | 10da5181688886758ce162705aaad8131b963e99 (diff) |
[SCSI] sd: DIF: Fix tagging on platforms with signed char
Switch tag arrays to u8 to prevent problems on platforms with signed
char.
Reported-by: Tim LaBerge <tim.laberge@Quantum.Com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r-- | drivers/scsi/sd_dif.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/scsi/sd_dif.c b/drivers/scsi/sd_dif.c index 2fe590f095fc..c9b41077fca1 100644 --- a/drivers/scsi/sd_dif.c +++ b/drivers/scsi/sd_dif.c | |||
@@ -142,7 +142,7 @@ static int sd_dif_type1_verify_ip(struct blk_integrity_exchg *bix) | |||
142 | static void sd_dif_type1_set_tag(void *prot, void *tag_buf, unsigned int sectors) | 142 | static void sd_dif_type1_set_tag(void *prot, void *tag_buf, unsigned int sectors) |
143 | { | 143 | { |
144 | struct sd_dif_tuple *sdt = prot; | 144 | struct sd_dif_tuple *sdt = prot; |
145 | char *tag = tag_buf; | 145 | u8 *tag = tag_buf; |
146 | unsigned int i, j; | 146 | unsigned int i, j; |
147 | 147 | ||
148 | for (i = 0, j = 0 ; i < sectors ; i++, j += 2, sdt++) { | 148 | for (i = 0, j = 0 ; i < sectors ; i++, j += 2, sdt++) { |
@@ -154,7 +154,7 @@ static void sd_dif_type1_set_tag(void *prot, void *tag_buf, unsigned int sectors | |||
154 | static void sd_dif_type1_get_tag(void *prot, void *tag_buf, unsigned int sectors) | 154 | static void sd_dif_type1_get_tag(void *prot, void *tag_buf, unsigned int sectors) |
155 | { | 155 | { |
156 | struct sd_dif_tuple *sdt = prot; | 156 | struct sd_dif_tuple *sdt = prot; |
157 | char *tag = tag_buf; | 157 | u8 *tag = tag_buf; |
158 | unsigned int i, j; | 158 | unsigned int i, j; |
159 | 159 | ||
160 | for (i = 0, j = 0 ; i < sectors ; i++, j += 2, sdt++) { | 160 | for (i = 0, j = 0 ; i < sectors ; i++, j += 2, sdt++) { |
@@ -256,7 +256,7 @@ static int sd_dif_type3_verify_ip(struct blk_integrity_exchg *bix) | |||
256 | static void sd_dif_type3_set_tag(void *prot, void *tag_buf, unsigned int sectors) | 256 | static void sd_dif_type3_set_tag(void *prot, void *tag_buf, unsigned int sectors) |
257 | { | 257 | { |
258 | struct sd_dif_tuple *sdt = prot; | 258 | struct sd_dif_tuple *sdt = prot; |
259 | char *tag = tag_buf; | 259 | u8 *tag = tag_buf; |
260 | unsigned int i, j; | 260 | unsigned int i, j; |
261 | 261 | ||
262 | for (i = 0, j = 0 ; i < sectors ; i++, j += 6, sdt++) { | 262 | for (i = 0, j = 0 ; i < sectors ; i++, j += 6, sdt++) { |
@@ -269,7 +269,7 @@ static void sd_dif_type3_set_tag(void *prot, void *tag_buf, unsigned int sectors | |||
269 | static void sd_dif_type3_get_tag(void *prot, void *tag_buf, unsigned int sectors) | 269 | static void sd_dif_type3_get_tag(void *prot, void *tag_buf, unsigned int sectors) |
270 | { | 270 | { |
271 | struct sd_dif_tuple *sdt = prot; | 271 | struct sd_dif_tuple *sdt = prot; |
272 | char *tag = tag_buf; | 272 | u8 *tag = tag_buf; |
273 | unsigned int i, j; | 273 | unsigned int i, j; |
274 | 274 | ||
275 | for (i = 0, j = 0 ; i < sectors ; i++, j += 2, sdt++) { | 275 | for (i = 0, j = 0 ; i < sectors ; i++, j += 2, sdt++) { |