On Fri, Apr 03, 2020 at 02:55:22PM +0200, Christoph Hellwig wrote: > Reflink should force the log out to disk if the filesystem was mounted > with wsync, the same as most other operations in xfs. > > Fixes: 3fc9f5e409319 ("xfs: remove xfs_reflink_remap_range") > Signed-off-by: Christoph Hellwig <hch@xxxxxx> Seems like a cleaner implementation than the one I came up with, Reviewed-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> --D > --- > fs/xfs/xfs_file.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/fs/xfs/xfs_file.c b/fs/xfs/xfs_file.c > index 68e1cbb3cfcc..4b8bdecc3863 100644 > --- a/fs/xfs/xfs_file.c > +++ b/fs/xfs/xfs_file.c > @@ -1059,7 +1059,11 @@ xfs_file_remap_range( > > ret = xfs_reflink_update_dest(dest, pos_out + len, cowextsize, > remap_flags); > + if (ret) > + goto out_unlock; > > + if (mp->m_flags & XFS_MOUNT_WSYNC) > + xfs_log_force_inode(dest); > out_unlock: > xfs_reflink_remap_unlock(file_in, file_out); > if (ret) > -- > 2.25.1 >