scsi: scsi_debug: write_same: fix error report
[ Upstream commit e33d7c56450b0a5c7290cbf9e1581fab5174f552 ] The scsi_debug driver incorrectly suggests there is an error with the SCSI WRITE SAME command when the number_of_logical_blocks is greater than 1. It will also suggest there is an error when NDOB (no data-out buffer) is set and the number_of_logical_blocks is greater than 0. Both are valid, fix. Signed-off-by: Douglas Gilbert <dgilbert@interlog.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Sasha Levin <alexander.levin@verizon.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
95e8d653ea
commit
aa902be004
@ -3001,11 +3001,11 @@ static int resp_write_same(struct scsi_cmnd *scp, u64 lba, u32 num,
|
||||
if (-1 == ret) {
|
||||
write_unlock_irqrestore(&atomic_rw, iflags);
|
||||
return DID_ERROR << 16;
|
||||
} else if (sdebug_verbose && (ret < (num * sdebug_sector_size)))
|
||||
} else if (sdebug_verbose && !ndob && (ret < sdebug_sector_size))
|
||||
sdev_printk(KERN_INFO, scp->device,
|
||||
"%s: %s: cdb indicated=%u, IO sent=%d bytes\n",
|
||||
"%s: %s: lb size=%u, IO sent=%d bytes\n",
|
||||
my_name, "write same",
|
||||
num * sdebug_sector_size, ret);
|
||||
sdebug_sector_size, ret);
|
||||
|
||||
/* Copy first sector to remaining blocks */
|
||||
for (i = 1 ; i < num ; i++)
|
||||
|
Loading…
x
Reference in New Issue
Block a user