"Martin K. Petersen" <martin.petersen@xxxxxxxxxx> writes: >>>>>> "Bill" == Bill Davidsen <davidsen@xxxxxxx> writes: > >>> FWIW, XFS and btrfs both use the page writeback bit correctly and >>> never change a page while it is undergoing I/O. >>> >>> > Bill> That's necessary but not sufficient. To be done correctly it must > Bill> be protected by md as well. This is because arrays are used > Bill> without a filesystem by some applications, such as swap and > Bill> database, to name the most common cases. > > I agree that making MD RAID1 do a copy would be a quick fix. But I > don't see any reason to encourage what is essentially sloppy behavior at > the top of the stack. And then what if you stack MD/DM devices? Do > each layer do a copy? I think that gets murky pretty quickly. Maybe as a quick debug the raid layer should make the page read-only and then watch what fails to write to it. > I'd much rather fix the cases where the top layers are broken. And as I > said there are several people working on this spurred by my work on the > data integrity extensions. > > FWIW, databases on raw disk have gone out of fashion. But it is true > that applications that do direct I/O need to avoid updating buffers in > flight. Maybe a flag somewhere saying if the data is safe from writes or not. Default would be unsafe and md copies. A filesystem that works "right" sets the safe flag as would md after copying. That way anything lower in the stack (like another md) has the flag set. MfG Goswin -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html