From: Eryu Guan Date: Sat, 22 Oct 2016 05:27:33 +0000 (+0800) Subject: xfs/054: only filter ROOT_INO at the beginning X-Git-Tag: v2022.05.01~2313 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=4c99b91d0ad9a97e9d409e8f52696598c934f43d;p=users%2Fhch%2Fxfstests-dev.git xfs/054: only filter ROOT_INO at the beginning In the test ROOT_INO is filtered out and/or replaced, but if ROOT_INO is also 32, more "32"s are filtered and replaced than expected. This happens to me when testing 512B block size XFS and 1k block size CRC enabled XFS. Fix it by filtering out only ROOT_INO at the beginning of a line, and removing all "g" modifiers in sed expressions. Also the ROOT_INO should be the root inode number of TEST_DIR not SCRATCH_MNT. Reviewed-by: Dave Chinner Signed-off-by: Eryu Guan --- diff --git a/tests/xfs/054 b/tests/xfs/054 index 7d08f8a7c..57b49e79b 100755 --- a/tests/xfs/054 +++ b/tests/xfs/054 @@ -52,13 +52,13 @@ _require_test _require_xfs_io_command "inode" # We know the root inode is there -ROOT_INO=`ls -id $SCRATCH_MNT | awk '{print $1}'` +ROOT_INO=`ls -id $TEST_DIR | awk '{print $1}'` touch $TEST_DIR/file $XFS_IO_PROG -c "inode" $TEST_DIR/file $XFS_IO_PROG -c "inode -v" $TEST_DIR/file | \ - grep -vw $ROOT_INO | sed -e s/.*:/LAST:/g + grep -vw "^$ROOT_INO" | sed -e s/.*:/LAST:/ # These should fail, -n requires an inode $XFS_IO_PROG -c "inode -n" $TEST_DIR/file 2>&1 | grep -q Query \ @@ -83,15 +83,15 @@ $XFS_IO_PROG -c "inode -n -v badnumber" $TEST_DIR/file | grep -q numeric \ # These should all work, and return $ROOT_INO or the next inode... # grep out ROOT_INO (which is incorrect) when we should be getting next inode $XFS_IO_PROG -c "inode $ROOT_INO" $TEST_DIR/file | \ - sed -e s/$ROOT_INO/ROOT_INO/g + sed -e s/$ROOT_INO/ROOT_INO/ $XFS_IO_PROG -c "inode -v $ROOT_INO" $TEST_DIR/file | \ - sed -e s/$ROOT_INO/ROOT_INO/g + sed -e s/$ROOT_INO/ROOT_INO/ $XFS_IO_PROG -c "inode -n $ROOT_INO" $TEST_DIR/file | \ - grep -vw $ROOT_INO | sed -e s/.*/NEXT/g + grep -vw "^$ROOT_INO" | sed -e s/.*/NEXT/ $XFS_IO_PROG -c "inode -nv $ROOT_INO" $TEST_DIR/file | \ - grep -vw $ROOT_INO | sed -e s/.*:/NEXT:/g + grep -vw "^$ROOT_INO" | sed -e s/.*:/NEXT:/ $XFS_IO_PROG -c "inode -n -v $ROOT_INO" $TEST_DIR/file | \ - grep -vw $ROOT_INO | sed -e s/.*:/NEXT:/g + grep -vw "^$ROOT_INO" | sed -e s/.*:/NEXT:/ # Try one that doesn't exist, 2^64-2? Should get 0 $XFS_IO_PROG -c "inode 18446744073709551614" $TEST_DIR/file