Lines Matching defs:src
787 * Now we can iteratively remap the range of extents (and holes) in src to the
789 * logical blocks in dest and src touched by the reflink operation.
792 * - Read src's bmbt at the start of srange ("imap")
812 * ----SSSSSSS-SSSSS----SSSSSS (src file)
819 * '-' means a hole, and 'S' and 'D' are written blocks in the src and dest.
862 struct xfs_inode *src,
865 struct xfs_mount *mp = src->i_mount;
869 if (xfs_is_reflink_inode(src) && xfs_is_reflink_inode(dest))
877 if (src->i_ino == dest->i_ino)
878 xfs_ilock(src, XFS_ILOCK_EXCL);
880 xfs_lock_two_inodes(src, XFS_ILOCK_EXCL, dest, XFS_ILOCK_EXCL);
882 if (!xfs_is_reflink_inode(src)) {
883 trace_xfs_reflink_set_inode_flag(src);
884 xfs_trans_ijoin(tp, src, XFS_ILOCK_EXCL);
885 src->i_d.di_flags2 |= XFS_DIFLAG2_REFLINK;
886 xfs_trans_log_inode(tp, src, XFS_ILOG_CORE);
887 xfs_ifork_init_cow(src);
889 xfs_iunlock(src, XFS_ILOCK_EXCL);
891 if (src->i_ino == dest->i_ino)
1159 struct xfs_inode *src,
1167 struct xfs_mount *mp = src->i_mount;
1179 trace_xfs_reflink_remap_blocks(src, srcoff, len, dest, destoff);
1186 lock_mode = xfs_ilock_data_map_shared(src);
1187 error = xfs_bmapi_read(src, srcoff, len, &imap, &nimaps, 0);
1188 xfs_iunlock(src, lock_mode);
1205 trace_xfs_reflink_remap_extent_src(src, &imap);
1228 XFS_FSB_TO_B(src->i_mount, remapped_len));
1291 struct xfs_inode *src = XFS_I(inode_in);
1297 ret = xfs_ilock2_io_mmap(src, dest);
1304 if (XFS_IS_REALTIME_INODE(src) || XFS_IS_REALTIME_INODE(dest))
1330 ret = xfs_reflink_set_inode_flag(src, dest);
1350 xfs_iunlock2_io_mmap(src, dest);