On Thu, Oct 02 2014 at 12:04am -0400, NeilBrown <neilb@xxxxxxx> wrote: > > I plan to submit this to Linus tomorrow, hopefully for 3.7, unless there are > complaints. It is in my for-next branch now. > > Thanks, > NeilBrown > > > From aec6f821ed92fac5ae4f1db50279a3999de5872a Mon Sep 17 00:00:00 2001 > From: NeilBrown <neilb@xxxxxxx> > Date: Thu, 2 Oct 2014 13:45:00 +1000 > Subject: [PATCH] md/raid5: disable 'DISCARD' by default due to safety > concerns. > > It has come to my attention (thanks Martin) that 'discard_zeroes_data' > is only a hint. Some devices in some cases don't do what it > says on the label. > > The use of DISCARD in RAID5 depends on reads from discarded regions > being predictably zero. If a write to a previously discarded region > performs a read-modify-write cycle it assumes that the parity block > was consistent with the data blocks. If all were zero, this would > be the case. If some are and some aren't this would not be the case. > This could lead to data corruption after a device failure when > data needs to be reconstructed from the parity. > > As we cannot trust 'discard_zeroes_data', ignore it by default > and so disallow DISCARD on all raid4/5/6 arrays. > > As many devices are trustworthy, and as there are benefits to using > DISCARD, add a module parameter to over-ride this caution and cause > DISCARD to work if discard_zeroes_data is set. > > If a site want to enable DISCARD on some arrays but not on others they > should select DISCARD support at the filesystem level, and set the > raid456 module parameter. > raid456.devices_handle_discard_safely=Y > > As this is a data-safety issue, I believe this patch is suitable for > -stable. > DISCARD support for RAID456 was added in 3.7 > > Cc: Shaohua Li <shli@xxxxxxxxxx> > Cc: "Martin K. Petersen" <martin.petersen@xxxxxxxxxx> > Cc: Mike Snitzer <snitzer@xxxxxxxxxx> > Cc: Heinz Mauelshagen <heinzm@xxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx (3.7+) > Fixes: 620125f2bf8ff0c4969b79653b54d7bcc9d40637 > Signed-off-by: NeilBrown <neilb@xxxxxxx> Acked-by: Mike Snitzer <snitzer@xxxxxxxxxx> Thanks Neil, I'll get something comparable staged for dm-raid for 3.18 (less urgency given that dm-raid doesn't yet support discards). -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel