xfs/004: relax freespace check
authorChristoph Hellwig <hch@lst.de>
Tue, 28 Feb 2017 00:52:35 +0000 (16:52 -0800)
committerEryu Guan <eguan@redhat.com>
Wed, 1 Mar 2017 03:25:06 +0000 (11:25 +0800)
Just check for a greater equals relation so that we don't have
to adjust the test for every new reservation scheme we add..

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
tests/xfs/004

index bbc1aee..f27f4b7 100755 (executable)
@@ -83,18 +83,15 @@ eval `$XFS_IO_PROG -x -c resblks $SCRATCH_MNT 2>&1 \
 echo "resblks gave: resblks=$resblks" >>$seqres.full
 
 # check the 'blocks' field from freesp command is OK
 echo "resblks gave: resblks=$resblks" >>$seqres.full
 
 # check the 'blocks' field from freesp command is OK
-#  - starting with Linux 4.10-rc the bmbt split reservation moved to be per-AG
 perl -ne '
        BEGIN   { $avail ='$avail' * 512 + ('$resblks' * '$dbsize');
                  $answer="(no xfs_db free blocks line?)" }
        /free blocks (\d+)$/    || next;
        $freesp = $1 * '$dbsize';
 perl -ne '
        BEGIN   { $avail ='$avail' * 512 + ('$resblks' * '$dbsize');
                  $answer="(no xfs_db free blocks line?)" }
        /free blocks (\d+)$/    || next;
        $freesp = $1 * '$dbsize';
-       if ($freesp == $avail + ('$agcount') * '$dbsize' * 8) {
-               $answer = "yes";
-       } elsif ($freesp == $avail + (('$agcount' + 1) * '$dbsize' * 4)) {
+       if ($freesp >= $avail) {
                $answer = "yes";
        } else {
                $answer = "yes";
        } else {
-               $answer = "no ($freesp != $avail)";
+               $answer = "no ($freesp < $avail)";
        }
        END     { print "$answer\n" }
        ' <$tmp.xfs_db >$tmp.ans
        }
        END     { print "$answer\n" }
        ' <$tmp.xfs_db >$tmp.ans