xfs: always set rvalp in xfs_dir2_node_trim_free
authorChristoph Hellwig <hch@lst.de>
Tue, 15 Mar 2016 00:44:18 +0000 (11:44 +1100)
committerDave Chinner <david@fromorbit.com>
Tue, 15 Mar 2016 00:44:18 +0000 (11:44 +1100)
xfs_dir2_node_trim_free can return with setting the rvalp argument
pointer.  Initialize it to 0 at the beginning of the function and
only update it to 1 if we succeeded trimming a freespace block.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/xfs/libxfs/xfs_dir2_node.c

index 63ee03db796ca9a55b9f9f10a427a6fd539c30d4..75a557432d0f87fdb4cfa866332c403023d169dc 100644 (file)
@@ -2235,6 +2235,9 @@ xfs_dir2_node_trim_free(
 
        dp = args->dp;
        tp = args->trans;
+
+       *rvalp = 0;
+
        /*
         * Read the freespace block.
         */
@@ -2255,7 +2258,6 @@ xfs_dir2_node_trim_free(
         */
        if (freehdr.nused > 0) {
                xfs_trans_brelse(tp, bp);
-               *rvalp = 0;
                return 0;
        }
        /*