summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/osd/osd_initiator.c
diff options
context:
space:
mode:
authorDouglas Gilbert <dgilbert@interlog.com>2011-03-11 16:43:35 +0100
committerJames Bottomley <James.Bottomley@suse.de>2011-03-15 00:59:57 +0100
commit32f7ef73585a8773914661e1a8e477e7a0bfa8b4 (patch)
treedf8be2c6f77161127fd73ddfa43f2f7b347aeea6 /drivers/scsi/osd/osd_initiator.c
parent[SCSI] libsas: fix ata list corruption issue (diff)
downloadlinux-32f7ef73585a8773914661e1a8e477e7a0bfa8b4.tar.xz
linux-32f7ef73585a8773914661e1a8e477e7a0bfa8b4.zip
[SCSI] scsi_debug: add consecutive medium errors
A useful test case for error recovery is multiple, consecutive medium errors. When scsi_debug is started with "opts=2" a MEDIUM ERROR is generated when block 0x1234 (4660) is read. The patch extends that to 10 consecutive blocks from 0x1234 (i.e. blocks 4660 to 4669 inclusive). [0:0:0:0] disk ATA INTEL SSD 2CV1 /dev/sda /dev/sg0 80.0GB [10:0:0:0] disk Linux scsi_debug 0004 /dev/sdb /dev/sg1 1.09TB Output file not specified so no copy, just reading input >> unrecovered read error at blk=4660, substitute zeros ... >> unrecovered read error at blk=4669, substitute zeros 4670+10 records in 0+0 records out 10 unrecovered read errors lowest unrecovered read lba=4660, highest unrecovered lba=4669 time to read data: 0.047943 secs at 49.87 MB/sec BTW Change /dev/sg1 (bsg device works just as well) to /dev/sdb to see why, with faulty media, you do not want to use the block layer interface. Reason: time block layer takes to do useless retries and collateral damage to data in its 4 KB blocks (O_DIRECT mitigates the latter). ChangeLog: - extend opts=2 medium error generation at block 0x1234 to 10 consecutive blocks (i.e. blocks 0x1234 to 0x123d). Signed-off-by: Douglas Gilbert <dgilbert@interlog.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/osd/osd_initiator.c')
0 files changed, 0 insertions, 0 deletions