On 06/04/2013 11:56 AM, Dan Williams wrote: > On Tue, Jun 4, 2013 at 11:38 AM, H. Peter Anvin <hpa@xxxxxxxxx> wrote: >> Well, if that is what the block device layer is defined to do then that >> is what the block layer does. It makes sense from the point of view of >> a disk, there block layer has to translate and redo, so if the block >> layer is defined to do that, why not rely on it? >> > > I'm just hung up on when we can safely mark the array as not dirty. > At a minimum this means raid needs a "I have an ignored-write-failure > in-flight, awaiting retry from upper layer" state. > Ah yes, if you rely on the block layer to retry on you you don't see the beginnings and ends of the entire transaction, and at least ideally the RAID -- and the specific blocks -- should be marked dirty during that operation. The same applies to DISCARD presumably. Yuck, this suddenly got complex. Perhaps WRITE SAME should simply be disabled on raid1/raid10 until this can be addressed? Do we need to do the same for DISCARD? -hpa -- 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