summaryrefslogtreecommitdiffstats
path: root/fs/xfs
diff options
context:
space:
mode:
authorAllison Collins <allison.henderson@oracle.com>2020-07-21 06:47:25 +0200
committerDarrick J. Wong <darrick.wong@oracle.com>2020-07-29 05:28:11 +0200
commit0949d317aee051fcb7ad9c8c7ec5d60b5cc412eb (patch)
tree256295f7afd94462b3c6c613fa7b3f78f4fd6fe0 /fs/xfs
parentxfs: Refactor xfs_attr_try_sf_addname (diff)
downloadlinux-0949d317aee051fcb7ad9c8c7ec5d60b5cc412eb.tar.xz
linux-0949d317aee051fcb7ad9c8c7ec5d60b5cc412eb.zip
xfs: Pull up trans roll from xfs_attr3_leaf_setflag
New delayed allocation routines cannot be handling transactions so pull them up into the calling functions Signed-off-by: Allison Collins <allison.henderson@oracle.com> Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Brian Foster <bfoster@redhat.com> Reviewed-by: Chandan Rajendra <chandanrlinux@gmail.com> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Acked-by: Dave Chinner <dchinner@redhat.com>
Diffstat (limited to 'fs/xfs')
-rw-r--r--fs/xfs/libxfs/xfs_attr.c5
-rw-r--r--fs/xfs/libxfs/xfs_attr_leaf.c5
2 files changed, 6 insertions, 4 deletions
diff --git a/fs/xfs/libxfs/xfs_attr.c b/fs/xfs/libxfs/xfs_attr.c
index 9e57409edc55..d3ab32d0f6ce 100644
--- a/fs/xfs/libxfs/xfs_attr.c
+++ b/fs/xfs/libxfs/xfs_attr.c
@@ -1126,6 +1126,11 @@ xfs_attr_node_removename(
error = xfs_attr3_leaf_setflag(args);
if (error)
goto out;
+
+ error = xfs_trans_roll_inode(&args->trans, args->dp);
+ if (error)
+ goto out;
+
error = xfs_attr_rmtval_remove(args);
if (error)
goto out;
diff --git a/fs/xfs/libxfs/xfs_attr_leaf.c b/fs/xfs/libxfs/xfs_attr_leaf.c
index 906049db57e4..7c72ff53f4bf 100644
--- a/fs/xfs/libxfs/xfs_attr_leaf.c
+++ b/fs/xfs/libxfs/xfs_attr_leaf.c
@@ -2833,10 +2833,7 @@ xfs_attr3_leaf_setflag(
XFS_DA_LOGRANGE(leaf, name_rmt, sizeof(*name_rmt)));
}
- /*
- * Commit the flag value change and start the next trans in series.
- */
- return xfs_trans_roll_inode(&args->trans, args->dp);
+ return 0;
}
/*