[dm-devel] [PATCH] dm-raid: add RAID discard support
Brassow Jonathan
jbrassow at redhat.com
Wed Sep 24 04:35:34 UTC 2014
On Sep 23, 2014, at 11:21 PM, NeilBrown wrote:
>
> For RAID5 it is not acceptable to return "zeros or the original content".
> This is because of the possibility of RMW cycles to update the parity block.
> As "discard" the doesn't treat all blocks in a stripe in an identical way
> will cause the parity block to become incorrect, and it will stay incorrect
> through multiple RMW cycles until an RCW corrects it.
> A device failure while the parity block is incorrect will lead to data
> corruption.
>
> The only real solution I can think of is to maintain an 'allocated' bitmap
> and clear bits when DISCARDing. When a write happens to a location that is
> not 'allocated' the whole bit worth gets resynced (or maybe zeroed-out).
>
> Grumble.
I see, sure.
Are there problems with this 'allocated' bitmap idea when bitrot is considered? Scrubbing (check/repair) assumes that the bitmap cannot be trusted and does a complete scan of the array - dealing with mismatches. If bitrot happens in the 'allocated' bitmap...
brassow
More information about the dm-devel
mailing list