There are two locks within the linux inode
XFS will hold it for the entire buffered write call
This is not the case for direct I/O
i_mutex is often taken outside of xfs as well
XFS also has the iolock and ilock mrlocks on the xfs inode
Must be taken in this order