Commit 297da633 authored by Allison Henderson's avatar Allison Henderson Committed by Darrick J. Wong
Browse files

xfs: Expose init_xattrs in xfs_create_tmpfile



Tmp files are used as part of rename operations and will need attr forks
initialized for parent pointers.  Expose the init_xattrs parameter to
the calling function to initialize the fork.

Signed-off-by: default avatarAllison Henderson <allison.henderson@oracle.com>
Reviewed-by: default avatarDarrick J. Wong <djwong@kernel.org>
Signed-off-by: default avatarDarrick J. Wong <djwong@kernel.org>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
parent ae673f53
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -1185,6 +1185,7 @@ xfs_create_tmpfile(
	struct mnt_idmap	*idmap,
	struct xfs_inode	*dp,
	umode_t			mode,
	bool			init_xattrs,
	struct xfs_inode	**ipp)
{
	struct xfs_mount	*mp = dp->i_mount;
@@ -1225,7 +1226,7 @@ xfs_create_tmpfile(
	error = xfs_dialloc(&tp, dp->i_ino, mode, &ino);
	if (!error)
		error = xfs_init_new_inode(idmap, tp, dp, ino, mode,
				0, 0, prid, false, &ip);
				0, 0, prid, init_xattrs, &ip);
	if (error)
		goto out_trans_cancel;

@@ -3037,7 +3038,7 @@ xfs_rename_alloc_whiteout(
	int			error;

	error = xfs_create_tmpfile(idmap, dp, S_IFCHR | WHITEOUT_MODE,
				   &tmpfile);
				   false, &tmpfile);
	if (error)
		return error;

+1 −1
Original line number Diff line number Diff line
@@ -522,7 +522,7 @@ int xfs_create(struct mnt_idmap *idmap,
			   umode_t mode, dev_t rdev, bool need_xattr,
			   struct xfs_inode **ipp);
int		xfs_create_tmpfile(struct mnt_idmap *idmap,
			   struct xfs_inode *dp, umode_t mode,
			   struct xfs_inode *dp, umode_t mode, bool init_xattrs,
			   struct xfs_inode **ipp);
int		xfs_remove(struct xfs_inode *dp, struct xfs_name *name,
			   struct xfs_inode *ip);
+1 −1
Original line number Diff line number Diff line
@@ -201,7 +201,7 @@ xfs_generic_create(
				xfs_create_need_xattr(dir, default_acl, acl),
				&ip);
	} else {
		error = xfs_create_tmpfile(idmap, XFS_I(dir), mode, &ip);
		error = xfs_create_tmpfile(idmap, XFS_I(dir), mode, false, &ip);
	}
	if (unlikely(error))
		goto out_free_acl;