[SCSI] scsi_debug: GET LBA STATUS response length correction
The SCSI GET LBA STATUS command was introduced in SBC-3 revision 20 in September 2009. At that time the Parameter Data Length field in the response had an associated byte offset of 8. Then in SBC-3 revision 25 (October 2010) that byte offset was changed to 4. The sg_get_lba_status utility in sg3_utils version 1.33 (released earlier today) has been changed to calculate the newer response length. However the implementation of GET LBA STATUS command in the scsi_debug driver still uses the original byte offset. modify the Parameter Data Length field value in the GET LBA STATUS command response to comply with the change in SBC-3 revision 25 Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
parent
bd9244f7b9
commit
de13e9654e
|
@ -2220,7 +2220,7 @@ static int resp_get_lba_status(struct scsi_cmnd * scmd,
|
|||
mapped = map_state(lba, &num);
|
||||
|
||||
memset(arr, 0, SDEBUG_GET_LBA_STATUS_LEN);
|
||||
put_unaligned_be32(16, &arr[0]); /* Parameter Data Length */
|
||||
put_unaligned_be32(20, &arr[0]); /* Parameter Data Length */
|
||||
put_unaligned_be64(lba, &arr[8]); /* LBA */
|
||||
put_unaligned_be32(num, &arr[16]); /* Number of blocks */
|
||||
arr[20] = !mapped; /* mapped = 0, unmapped = 1 */
|
||||
|
|
Loading…
Reference in a new issue