git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
[SCSI] sd: Correctly handle 6-byte commands with DIX
[safe/jmp/linux-2.6]
/
drivers
/
scsi
/
sd_dif.c
diff --git
a/drivers/scsi/sd_dif.c
b/drivers/scsi/sd_dif.c
index
c9b4107
..
184dff4
100644
(file)
--- a/
drivers/scsi/sd_dif.c
+++ b/
drivers/scsi/sd_dif.c
@@
-374,7
+374,10
@@
void sd_dif_op(struct scsi_cmnd *scmd, unsigned int dif, unsigned int dix, unsig
else
csum_convert = 0;
+ BUG_ON(dif && (scmd->cmnd[0] == READ_6 || scmd->cmnd[0] == WRITE_6));
+
switch (scmd->cmnd[0]) {
+ case READ_6:
case READ_10:
case READ_12:
case READ_16:
@@
-390,6
+393,7
@@
void sd_dif_op(struct scsi_cmnd *scmd, unsigned int dif, unsigned int dix, unsig
break;
+ case WRITE_6:
case WRITE_10:
case WRITE_12:
case WRITE_16: