xfs: clean up state variable usage in xfs_attr_node_remove_attr
authorDarrick J. Wong <djwong@kernel.org>
Sun, 22 May 2022 05:59:48 +0000 (15:59 +1000)
committerDave Chinner <david@fromorbit.com>
Sun, 22 May 2022 05:59:48 +0000 (15:59 +1000)
The state variable is now a local variable pointing to a heap
allocation, so we don't need to zero-initialize it, nor do we need the
conditional to decide if we should free it.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/xfs/libxfs/xfs_attr.c

index a711976e4fafe53ff0a8883bf1157a1bb71dc109..130eed8f518524ac7cd5bb88816c42b869b28090 100644 (file)
@@ -1516,7 +1516,7 @@ xfs_attr_node_remove_attr(
        struct xfs_attr_item            *attr)
 {
        struct xfs_da_args              *args = attr->xattri_da_args;
-       struct xfs_da_state             *state = NULL;
+       struct xfs_da_state             *state = xfs_da_state_alloc(args);
        int                             retval = 0;
        int                             error = 0;
 
@@ -1526,8 +1526,6 @@ xfs_attr_node_remove_attr(
         * attribute entry after any split ops.
         */
        args->attr_filter |= XFS_ATTR_INCOMPLETE;
-       state = xfs_da_state_alloc(args);
-       state->inleaf = 0;
        error = xfs_da3_node_lookup_int(state, &retval);
        if (error)
                goto out;
@@ -1545,8 +1543,7 @@ xfs_attr_node_remove_attr(
        retval = error = 0;
 
 out:
-       if (state)
-               xfs_da_state_free(state);
+       xfs_da_state_free(state);
        if (error)
                return error;
        return retval;