Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7a6ccf00 authored by Darrick J. Wong's avatar Darrick J. Wong Committed by Dave Chinner
Browse files

xfs: remove redundant remap partial EOF block checks



Now that we've moved the partial EOF block checks to the VFS helpers, we
can remove the redundant functionality from XFS.

Signed-off-by: default avatarDarrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: default avatarDave Chinner <dchinner@redhat.com>
Signed-off-by: default avatarDave Chinner <david@fromorbit.com>
parent 3f68c1f5
Loading
Loading
Loading
Loading
+0 −19
Original line number Diff line number Diff line
@@ -1314,7 +1314,6 @@ xfs_reflink_remap_prep(
	struct inode		*inode_out = file_inode(file_out);
	struct xfs_inode	*dest = XFS_I(inode_out);
	bool			same_inode = (inode_in == inode_out);
	u64			blkmask = i_blocksize(inode_in) - 1;
	ssize_t			ret;

	/* Lock both files against IO */
@@ -1342,24 +1341,6 @@ xfs_reflink_remap_prep(
	if (ret < 0 || *len == 0)
		goto out_unlock;

	/*
	 * If the dedupe data matches, chop off the partial EOF block
	 * from the source file so we don't try to dedupe the partial
	 * EOF block.
	 */
	if (remap_flags & REMAP_FILE_DEDUP) {
		*len &= ~blkmask;
	} else if (*len & blkmask) {
		/*
		 * The user is attempting to share a partial EOF block,
		 * if it's inside the destination EOF then reject it.
		 */
		if (pos_out + *len < i_size_read(inode_out)) {
			ret = -EINVAL;
			goto out_unlock;
		}
	}

	/* Attach dquots to dest inode before changing block map */
	ret = xfs_qm_dqattach(dest);
	if (ret)