On Mon, Feb 01, 2016 at 01:54:07PM -0800, Darrick J. Wong wrote: > Also: I've noticed that if I write 8MB file to a file backed by a failing > device, xfs_end_io_direct_write() gets called with size == 8MB even if the > writes failed. If the write was to an unwritten extent, the extent will be > converted to a regular extent even though the blocks contain old file contents > and other garbage, which can subsequently be read off the disk. > > For CoW I'd only want to remap the blocks if the write totally succeeds. If a > disk error happens, the EIO code gets passed back to userspace, and it seems > logical to me that the file contents should remain unchanged. > > To that end, I'm changing dio_iodone_t to pass an error code, and I think I > want to change XFS to avoid doing unwritten extent conversions when the write > fails. Does that make sense? I have some of these patches prepared already, I'm just too busy keeping up with all your changes. I'll rebase and post this ASAP! _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs