xfs: remove unnecessary dfops init calls in xattr code

Each xfs_defer_init() call in the xattr code uses the internal dfops
reference. In addition, a successful xfs_defer_finish() always
returns with a reset xfs_defer_ops structure.

Given that along with the fact that every xfs_defer_init() call in
the xattr code is followed up by an xfs_defer_finish(), the former
calls are no longer necessary and can be removed.

Note that the xfs_defer_init() call in the remote value copy loop of
xfs_attr_rmtval_set() is not followed by a finish, but the dfops is
unused in this instance.

Signed-off-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Bill O'Donnell <billodo@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
This commit is contained in:
Brian Foster 2018-07-24 13:43:14 -07:00 committed by Darrick J. Wong
parent c8eac49ef7
commit d5cca7eb24
2 changed files with 0 additions and 11 deletions

View File

@ -587,7 +587,6 @@ xfs_attr_leaf_addname(
* Commit that transaction so that the node_addname() call
* can manage its own transactions.
*/
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_attr3_leaf_to_node(args);
if (error)
goto out_defer_cancel;
@ -676,7 +675,6 @@ xfs_attr_leaf_addname(
* If the result is small enough, shrink it all into the inode.
*/
if ((forkoff = xfs_attr_shortform_allfit(bp, dp))) {
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_attr3_leaf_to_shortform(bp, args, forkoff);
/* bp is gone due to xfs_da_shrink_inode */
if (error)
@ -741,7 +739,6 @@ xfs_attr_leaf_removename(
* If the result is small enough, shrink it all into the inode.
*/
if ((forkoff = xfs_attr_shortform_allfit(bp, dp))) {
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_attr3_leaf_to_shortform(bp, args, forkoff);
/* bp is gone due to xfs_da_shrink_inode */
if (error)
@ -870,7 +867,6 @@ xfs_attr_node_addname(
*/
xfs_da_state_free(state);
state = NULL;
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_attr3_leaf_to_node(args);
if (error)
goto out_defer_cancel;
@ -897,7 +893,6 @@ xfs_attr_node_addname(
* in the index/blkno/rmtblkno/rmtblkcnt fields and
* in the index2/blkno2/rmtblkno2/rmtblkcnt2 fields.
*/
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_da3_split(state);
if (error)
goto out_defer_cancel;
@ -995,7 +990,6 @@ xfs_attr_node_addname(
* Check to see if the tree needs to be collapsed.
*/
if (retval && (state->path.active > 1)) {
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_da3_join(state);
if (error)
goto out_defer_cancel;
@ -1120,7 +1114,6 @@ xfs_attr_node_removename(
* Check to see if the tree needs to be collapsed.
*/
if (retval && (state->path.active > 1)) {
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_da3_join(state);
if (error)
goto out_defer_cancel;
@ -1152,7 +1145,6 @@ xfs_attr_node_removename(
goto out;
if ((forkoff = xfs_attr_shortform_allfit(bp, dp))) {
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_attr3_leaf_to_shortform(bp, args, forkoff);
/* bp is gone due to xfs_da_shrink_inode */
if (error)

View File

@ -480,7 +480,6 @@ xfs_attr_rmtval_set(
* extent and then crash then the block may not contain the
* correct metadata after log recovery occurs.
*/
xfs_defer_init(args->trans, args->trans->t_dfops);
nmap = 1;
error = xfs_bmapi_write(args->trans, dp, (xfs_fileoff_t)lblkno,
blkcnt, XFS_BMAPI_ATTRFORK, args->total, &map,
@ -522,7 +521,6 @@ xfs_attr_rmtval_set(
ASSERT(blkcnt > 0);
xfs_defer_init(args->trans, args->trans->t_dfops);
nmap = 1;
error = xfs_bmapi_read(dp, (xfs_fileoff_t)lblkno,
blkcnt, &map, &nmap,
@ -625,7 +623,6 @@ xfs_attr_rmtval_remove(
blkcnt = args->rmtblkcnt;
done = 0;
while (!done) {
xfs_defer_init(args->trans, args->trans->t_dfops);
error = xfs_bunmapi(args->trans, args->dp, lblkno, blkcnt,
XFS_BMAPI_ATTRFORK, 1, &done);
if (error)