Re: Simulating faulty disk

Bryn M. Reeves
2011-10-20T15:56:34Z

On 10/20/2011 04:45 PM, Yathindra wrote:
> Hi Bryn,
>
> Thanks for that info. Could you please tell me where I can find more
> details about using it.
>
> Thanks again,
> Yathi

There's a couple of brief files describing the targets in the
Documentation/device-mapper directory:

http://www.kernel.org/doc/Documentation/device-mapper/dm-flakey.txt
http://www.kernel.org/doc/Documentation/device-mapper/delay.txt

They both work like the linear target (except that they introduce the
specified faults according to their parameters).

To set up a device with both you'd need to use a pair of stacked devices
so something like:

dmsetup create d0 --table="0 $SECTORS delay $DEVICE 0 500"
dmsetup create f0 --table="0 $SECTORS flakey /dev/mapper/d0 0 9 1"

This will create a device /dev/mapper/f0 that is drops out for 1s in
every 10 and has a 500ms delay on reads and writes. SECTORS is the size
of the underlying device in sectors (use e.g. $(blockdev --getsize)).

You can optionally specify separate delays/device for writes to the
delay layer and write loss / write corruption for the flakey layer - see
the doc files and also the comments above flakey_ctr and delay_ctr for
more details.

Regards,
Bryn.