Re: RAID1 sometimes have different data on the slave devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 13 2018, David C. Rankin wrote:

> On 08/11/2018 02:06 AM, NeilBrown wrote:
>> It might be expected behaviour with async direct IO.
>> Two threads writing with O_DIRECT io to the same address could result in
>> different data on the two devices.  This doesn't seem to me to be a
>> credible use-case though.  Why would you ever want to do that in
>> practice?
>> 
>> NeilBrown
>
>   My only thought is while the credible case may be weak, if it is something
> that can be protected against with a few conditionals to prevent the different
> data on the slaves diverging -- then it's worth a couple of conditions to
> prevent the nut that know just enough about dd from confusing things....

Yes, it can be protected against - the code is already written.
If you have a 2-drive raid1 and want it to be safe against this attack,
simply:

  mdadm /dev/md127 --grow --level=raid5

This will add the required synchronization between writes so that
multiple writes to the one block are linearized.  There will be a
performance impact.

NeilBrown

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux