]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
xfs: simplify xfs_attr_remove_args
authorChristoph Hellwig <hch@lst.de>
Wed, 30 Jun 2021 22:38:58 +0000 (18:38 -0400)
committerEric Sandeen <sandeen@sandeen.net>
Wed, 30 Jun 2021 22:38:58 +0000 (18:38 -0400)
Source kernel commit: 605e74e29218bb22edd5ddcf90a4d37df00446cc

Directly return from the subfunctions and avoid the error variable.  Also
remove the not really needed dp local variable.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
libxfs/xfs_attr.c

index 79c82668f0fd4e6d75238a463f3a571895cc87b7..40384e99593354e8ca210d3fcd58e909cdca0b12 100644 (file)
@@ -386,21 +386,16 @@ int
 xfs_attr_remove_args(
        struct xfs_da_args      *args)
 {
-       struct xfs_inode        *dp = args->dp;
-       int                     error;
+       if (!xfs_inode_hasattr(args->dp))
+               return -ENOATTR;
 
-       if (!xfs_inode_hasattr(dp)) {
-               error = -ENOATTR;
-       } else if (dp->i_afp->if_format == XFS_DINODE_FMT_LOCAL) {
-               ASSERT(dp->i_afp->if_flags & XFS_IFINLINE);
-               error = xfs_attr_shortform_remove(args);
-       } else if (xfs_attr_is_leaf(dp)) {
-               error = xfs_attr_leaf_removename(args);
-       } else {
-               error = xfs_attr_node_removename(args);
+       if (args->dp->i_afp->if_format == XFS_DINODE_FMT_LOCAL) {
+               ASSERT(args->dp->i_afp->if_flags & XFS_IFINLINE);
+               return xfs_attr_shortform_remove(args);
        }
-
-       return error;
+       if (xfs_attr_is_leaf(args->dp))
+               return xfs_attr_leaf_removename(args);
+       return xfs_attr_node_removename(args);
 }
 
 /*