On Fri, Dec 29, 2017 at 12:14:14AM +0100, Gionatan Danti wrote: > Hi list, > I would ask a question: how XFS block size affect read-modify-write in case > of very small writes? > Hi, > For example, suppose an XFS filesystem with the default 4K data block size. > Am I correct saying that: > - a 512B normal, cached writes will cause a read-modify-write of the entire > 4K sector? > - a 512B O_DIRECT write will *not* cause a read-modify-write of the 4K > sector, rather it will be flushed to disk as-is (512 bytes in length)? > IIRC, although the DIO requirement is to have writes aligned to the logical sector size, issuing such IOs not properly aligned with the filesystem block size, have a few consequences. - It will require exclusive inode io locks, so serializing IOs to the inode - And yes, it will require a RMW to the block in question, all IO are always made in filesystem block size units. I'm probably missing something else here though, but these two are the things I had in my mind. Cheers > Thanks. > > -- > Danti Gionatan > Supporto Tecnico > Assyoma S.r.l. - www.assyoma.it > email: g.danti@xxxxxxxxxx - info@xxxxxxxxxx > GPG public key ID: FF5F32A8 > -- > To unsubscribe from this list: send the line "unsubscribe linux-xfs" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- Carlos -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html