Re: [PATCH v1 1/1] xfstests: Add parent pointer test

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jun 10, 2018 at 8:43 AM, Amir Goldstein <amir73il@xxxxxxxxx> wrote:
> On Sun, Jun 10, 2018 at 8:10 AM, Allison Henderson
> <allison.henderson@xxxxxxxxxx> wrote:
>> This patch adds a test for basic parent pointer operations,
>> including link, unlink, rename, overwrite, hardlinks and
>> error inject.
>>
>> Signed-off-by: Allison Henderson <allison.henderson@xxxxxxxxxx>
>
> Looks mostly good. some comments below.

2 more..

>
>> ---
>>  tests/xfs/448     |  423 +++++++++++++++++++++
>>  tests/xfs/448.out | 1096 +++++++++++++++++++++++++++++++++++++++++++++++++++++
>>  tests/xfs/group   |    1 +
>>  3 files changed, 1520 insertions(+)
>>
>> diff --git a/tests/xfs/448 b/tests/xfs/448
>> new file mode 100755
>> index 0000000..8353bdb
>> --- /dev/null
>> +++ b/tests/xfs/448
>> @@ -0,0 +1,423 @@
>> +#! /bin/bash
>> +# Test 448
>> +#
>> +# parent pointer tests
>> +#
>> +#-----------------------------------------------------------------------
>> +# Copyright (c) 2018 Oracle, Inc.  All Rights Reserved.
>> +#
>> +# This program is free software; you can redistribute it and/or
>> +# modify it under the terms of the GNU General Public License as
>> +# published by the Free Software Foundation.
>> +#
>> +# This program is distributed in the hope that it would be useful,
>> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
>> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
>> +# GNU General Public License for more details.
>> +#
>> +# You should have received a copy of the GNU General Public License
>> +# along with this program; if not, write the Free Software Foundation,
>> +# Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
>> +#-----------------------------------------------------------------------
>> +#
>> +
>> +seq=`basename $0`
>> +seqres=$RESULT_DIR/$seq
>> +echo "QA output created by $seq"
>> +
>> +here=`pwd`
>> +tmp=/tmp/$$
>> +seqfull="$seqres.full"
>> +tatus=1        # failure is the default!
>
> typo 'tutus'
>
>> +trap "_cleanup; exit \$status" 0 1 2 3 15
>> +
>> +_cleanup()
>> +{
>> +       cd /
>> +       rm -f $tmp.*
>> +}
>> +
>> +filter_dbval()
>> +{
>> +       awk '{ print $4 }'
>> +}
>> +
>> +_full()
>> +{
>> +    echo ""            >>$seqfull
>> +    echo "*** $* ***"  >>$seqfull
>> +    echo ""            >>$seqfull
>> +}
>> +
>> +# get standard environment, filters and checks
>> +. ./common/rc
>> +. ./common/filter
>> +. ./common/reflink
>> +. ./common/inject
>> +
>> +# remove previous $seqres.full before test
>> +rm -f $seqres.full
>> +
>> +# Modify as appropriate
>> +_supported_os Linux
>> +_supported_fs xfs
>> +_require_scratch
>> +_require_xfs_io_error_injection "delayed_attr"

You need to implement and use
_require_xfs_io_command "parent"

>> +
>> +echo "Silence is golden."
>
> This is used it tests that don't emit any other output.
> Please remove.
>
>> +
>> +# real QA test starts here
>> +protofile=$tmp.proto
>> +tempfile=$tmp.file
>> +
>> +echo fish >$tempfile
>> +$here/src/devzero -b 2048 -n 2 -c -v 44 $tempfile.2
>
> It this used? comment might help.
>
>> +
>> +cat >$protofile <<EOF
>> +DUMMY1
>> +0 0
>> +: root directory
>> +d--777 3 1
>> +: a directory
>> +testfolder1 d--755 3 1
>> +file1 ---755 3 1 /dev/null
>> +$
>> +: back in the root
>> +testfolder2 d--755 3 1
>> +file2 ---755 3 1 /dev/null
>> +: done
>> +$
>> +EOF
>> +
>> +if [ $? -ne 0 ]
>> +then
>> +    _fail "failed to create test protofile"
>> +fi
>> +
>
> Please add a comment to explain what's the purpose of using
> protofile in this test.
>
>
>> +#
>> +# parse_parent_pointer PARENT_POINTER_LIST PARENT_INODE PARENT_POINTER_NAME
>> +#
>> +# Given a list of parent pointers, find the record that matches
>> +# the given inode and filename
>> +#
>> +# outputs:
>> +# PPINO                : Parent pointer inode
>> +# PPGEN                : Parent pointer generation
>> +# PPNAME       : Parent pointer name
>> +# PPNAME_LEN   : Parent pointer name length
>> +#
>> +parse_parent_pointer()
>> +{
>> +       PARENTS=$1
>> +       PINO=$2
>> +       PARENT_POINTER_NAME=$3
>> +
>> +       PLEN=${#PARENTS[@]}
>> +       FOUND=0
>> +
>> +       # Find the entry that has the same inode as the parent
>> +       # and parse out the entry info
>> +       for (( i=0; i<${PLEN}; i++ )); do
>> +
>> +               #advance to the parent entry matching the parent inode
>> +               if ! echo ${PARENTS[$i]} | grep -q "p_ino    = $PINO" ; then
>> +                       continue
>> +               fi
>> +
>> +               PPINO="$(echo ${PARENTS[$i]} | awk '{print $NF}')"
>> +
>> +               ((i++))
>> +               PPGEN="$(echo ${PARENTS[$i]} | awk '{print $NF}')"
>> +
>> +               ((i++))
>> +               PPNAME_LEN="$(echo ${PARENTS[$i]} | awk '{print $NF}')"
>> +
>> +               ((i++))
>> +               PPNAME="$(echo ${PARENTS[$i]} | awk '{print $NF}' | cut -d '"' -f2 )"
>> +
>> +               if [ "$PPNAME" != "$PARENT_POINTER_NAME" ]; then
>> +                       continue
>> +               fi
>> +
>> +               break
>> +       done
>> +
>> +       # If exhausted the list, we didnt find anything
>> +       if [ $i -eq $PLEN ]; then
>> +               return 0
>> +       fi
>> +
>> +       # Verify the parent pointer name length is correct
>> +       if [ $PPNAME_LEN -ne ${#PARENT_POINTER_NAME} ]
>> +       then
>> +               _fail "Bad parent pointer reclen for $CHILD_PATH"
>> +       fi
>> +
>> +       #return sucess
>> +       return 1
>> +
>> +}
>> +
>> +#
>> +# verify_parent PARENT_PATH PARENT_POINTER_NAME CHILD_PATH
>> +#
>> +# Verify that the given child path lists the given parent as a parent pointer
>> +# and that the parent pointer name matches the given name
>> +#
>> +# Examples:
>> +#
>> +# #simple example
>> +# mkdir testfolder1
>> +# touch testfolder1/file1
>> +# verify_parent testfolder1 file1 testfolder1/file1
>> +#
>> +# #hardlink example
>> +# mkdir testfolder1
>> +# mkdir testfolder2
>> +# touch testfolder1/file1
>> +# ln testfolder1/file1 testfolder2/file1_ln
>> +# verify_parent testfolder2 file1_ln testfolder1/file1
>> +#
>> +verify_parent()
>> +{
>> +
>> +       PARENT_PATH=$1
>> +       PARENT_POINTER_NAME=$2
>> +       CHILD_PATH=$3
>> +
>> +       CHILD_NAME=$(basename "$CHILD_PATH")
>> +       PPINO=0
>> +       PPGEN=0
>> +       PPNAME_LEN=0
>> +       PPNAME=""
>> +       IFS=$'\n'
>> +
>> +       # Verify parent exists
>> +       if [ ! -d $SCRATCH_MNT/$PARENT_PATH ]; then
>> +               _fail "$SCRATCH_MNT/$PARENT_PATH not found"
>> +       else
>> +               echo "*** $PARENT_PATH OK"
>> +       fi
>> +
>> +       # Verify child exists
>> +       if [ ! -f $SCRATCH_MNT/$CHILD_PATH ]; then
>> +               _fail "$SCRATCH_MNT/$CHILD_PATH not found"
>> +       else
>> +               echo "*** $CHILD_PATH OK"
>> +       fi
>> +
>> +       # Verify the parent pointer name exists as a child of the parent
>> +       PARENT_PPATH="$PARENT_PATH/$PARENT_POINTER_NAME"
>> +
>> +       if [ ! -f $SCRATCH_MNT/$PARENT_PPATH ]; then
>> +               _fail "$SCRATCH_MNT/$PARENT_PPATH not found"
>> +       else
>> +               echo "*** $PARENT_PPATH OK"
>> +       fi
>> +
>> +       # Get the inodes of both parent and child
>> +       PINO="$(stat -c '%i' $SCRATCH_MNT/$PARENT_PATH)"
>> +       CINO="$(stat -c '%i' $SCRATCH_MNT/$CHILD_PATH)"
>> +
>> +       # Get all the parent pointers of the child
>> +       PARENTS=($($XFS_IO_PROG -x -c parent $SCRATCH_MNT/$CHILD_PATH))
>> +       if [[ $? != 0 ]]; then
>> +                _fail "No parent pointers found for $CHILD_PATH"
>> +       fi
>> +
>> +       parse_parent_pointer $PARENTS $PINO $PARENT_POINTER_NAME
>> +       FOUND=$?
>> +
>> +       # If we didnt find one, bail out
>> +       if [ $FOUND -eq 0 ]; then
>> +               _fail "No parent pointer record found for $PARENT_PATH in $CHILD_PATH"
>> +       fi
>> +
>> +       # Verify the inode generated by the parent pointer name is
>> +       # the same as the child inode
>> +       PPPINO="$(stat -c '%i' $SCRATCH_MNT/$PARENT_PPATH)"
>> +       if [ $CINO -ne $PPPINO ]
>> +       then
>> +               _fail "Bad parent pointer name value for $CHILD_PATH."\
>> +                               "$SCRATCH_MNT/$PARENT_PPATH belongs to inode $PPPINO, but should be $CINO"
>> +       fi
>> +
>> +       echo "*** Verified parent pointer:"\
>> +                       "inode:$PPINO, name:$PPNAME, namelen:$PPNAME_LEN"
>> +       echo "*** Parent pointer OK for child $CHILD_PATH inode:$CINO"
>> +}
>> +
>> +#
>> +# verify_parent PARENT_PATH PARENT_POINTER_NAME CHILD_PATH
>> +#
>> +# Verify that the given child path contains no parent pointer entry
>> +# for the given parent path and parnet pointer name
>> +#
>> +verify_no_parent()
>> +{
>> +
>> +       PARENT_PATH=$1
>> +       PARENT_PNAME=$2
>> +       CHILD_PATH=$3
>> +       CHILD_NAME=$(basename "$CHILD_PATH")
>> +       PPINO=0
>> +       PPGEN=0
>> +       PPNAME_LEN=0
>> +       PPNAME=""
>> +       IFS=$'\n'
>> +
>> +       # Check if parent even exists
>> +       if [ ! -d $SCRATCH_MNT/$PARENT_PATH ]; then
>> +               return 0
>> +       fi
>> +
>> +
>> +       # Verify child exists
>> +       if [ ! -f $SCRATCH_MNT/$CHILD_PATH ]; then
>> +               _fail "$SCRATCH_MNT/$CHILD_PATH not found"
>> +       else
>> +               echo "*** $CHILD_PATH OK"
>> +       fi
>> +
>> +       # Get parent inode
>> +       PINO="$(stat -c '%i' $SCRATCH_MNT/$PARENT_PATH)"
>> +
>> +       # Get all the parent pointers of the child
>> +       PARENTS=($($XFS_IO_PROG -x -c parent $SCRATCH_MNT/$CHILD_PATH))
>> +       if [[ $? != 0 ]]; then
>> +               return 0
>> +       fi
>> +
>> +       parse_parent_pointer $PARENTS $PINO $PARENT_PNAME
>> +       FOUND=$?
>> +
>> +       # If we didnt find one, return sucess
>> +       if [ $FOUND -eq 0 ]; then
>> +               return 0
>> +       fi
>> +
>> +       _fail "Parent pointer entry found where none should:"\
>> +                       "inode:$PPINO, gen:$PPGEN,"
>> +                       "name:$PPNAME, namelen:$PPNAME_LEN"
>> +}
>> +
>> +verify_fs()
>> +{
>> +       echo "*** create FS"
>> +
>> +       rm -f $seqfull
>> +       _scratch_unmount >/dev/null 2>&1
>> +
>> +       _scratch_mkfs_xfs -f -n parent=1 -p $protofile >>$seqfull 2>&1 \
>> +               || _fail "mkfs failed"
>> +       echo "*** check FS"
>> +       _check_scratch_fs
>> +
>> +       echo "*** mount FS"
>> +       _full " mount"
>> +       _scratch_mount >>$seqfull 2>&1 \
>> +               || _fail "mount failed"
>> +
>> +       TESTFOLDER1="testfolder1"
>> +       TESTFOLDER2="testfolder2"
>> +       FILE1="file1"
>> +       FILE2="file2"
>> +       FILE3="file3"
>> +       FILE4="file4"
>> +       FILE5="file5"
>> +       FILE1_LN="file1_link"
>> +
>> +       echo ""
>> +       echo "Create parent pointer test"
>> +       verify_parent "$TESTFOLDER1" "$FILE1" "$TESTFOLDER1/$FILE1"
>> +
>> +       echo ""
>> +       echo "Move parent pointer test"
>> +       mv $SCRATCH_MNT/$TESTFOLDER1/$FILE1 $SCRATCH_MNT/$TESTFOLDER2/$FILE1
>> +       verify_parent "$TESTFOLDER2" "$FILE1" "$TESTFOLDER2/$FILE1"
>> +
>> +       echo ""
>> +       echo "Hard link parent pointer test"
>> +       ln $SCRATCH_MNT/$TESTFOLDER2/$FILE1 $SCRATCH_MNT/$TESTFOLDER1/$FILE1_LN
>> +       verify_parent "$TESTFOLDER1" "$FILE1_LN"  "$TESTFOLDER1/$FILE1_LN"
>> +       verify_parent "$TESTFOLDER1" "$FILE1_LN"  "$TESTFOLDER2/$FILE1"
>> +       verify_parent "$TESTFOLDER2" "$FILE1"     "$TESTFOLDER1/$FILE1_LN"
>> +       verify_parent "$TESTFOLDER2" "$FILE1"     "$TESTFOLDER2/$FILE1"
>> +
>> +       echo ""
>> +       echo "Remove hard link parent pointer test"
>> +       rm $SCRATCH_MNT/$TESTFOLDER2/$FILE1
>> +       verify_parent    "$TESTFOLDER1" "$FILE1_LN" "$TESTFOLDER1/$FILE1_LN"
>> +       verify_no_parent "$TESTFOLDER2" "$FILE1"    "$TESTFOLDER1/$FILE1_LN"
>> +
>> +       echo ""
>> +       echo "Rename parent pointer test"
>> +       mv $SCRATCH_MNT/$TESTFOLDER1/$FILE1_LN $SCRATCH_MNT/$TESTFOLDER1/$FILE2
>> +       verify_parent    "$TESTFOLDER1" "$FILE2"    "$TESTFOLDER1/$FILE2"
>> +       verify_no_parent "$TESTFOLDER1" "$FILE1_LN" "$TESTFOLDER1/$FILE2"
>> +
>> +       echo ""
>> +       echo "Over write parent pointer test"
>> +       touch $SCRATCH_MNT/$TESTFOLDER2/$FILE3
>> +       verify_parent    "$TESTFOLDER2" "$FILE3"    "$TESTFOLDER2/$FILE3"
>> +       mv -f $SCRATCH_MNT/$TESTFOLDER2/$FILE3 $SCRATCH_MNT/$TESTFOLDER1/$FILE2
>> +       verify_parent    "$TESTFOLDER1" "$FILE2"    "$TESTFOLDER1/$FILE2"
>> +
>> +
>> +       echo ""
>> +       echo "Multi link parent pointer test"
>> +       NLINKS=100
>> +       touch $SCRATCH_MNT/$TESTFOLDER1/$FILE1
>> +       for (( j=0; j<$NLINKS; j++ )); do
>> +               ln $SCRATCH_MNT/$TESTFOLDER1/$FILE1 $SCRATCH_MNT/$TESTFOLDER1/$FILE1_LN.$j
>> +               verify_parent    "$TESTFOLDER1" "$FILE1_LN.$j"    "$TESTFOLDER1/$FILE1"
>> +               verify_parent    "$TESTFOLDER1" "$FILE1"          "$TESTFOLDER1/$FILE1_LN.$j"
>> +       done
>> +       echo "Multi unlink parent pointer test"
>> +       for (( j=$NLINKS-1; j<=0; j-- )); do
>> +               rm $SCRATCH_MNT/$TESTFOLDER1/$FILE1_LN.$j
>> +               verify_no_parent "$TESTFOLDER1" "$FILE1_LN.$j" "$TESTFOLDER1/$FILE1"
>> +       done
>> +
>> +
>> +       echo ""
>> +       echo "Error inject test"
>> +
>> +       echo "Create files"
>> +       touch $SCRATCH_MNT/$TESTFOLDER1/$FILE4
>> +       verify_parent    "$TESTFOLDER1" "$FILE4" "$TESTFOLDER1/$FILE4"
>> +
>> +       echo "Inject error"
>> +       _scratch_inject_error "delayed_attr"
>> +
>> +       echo "Move files"
>> +       mv $SCRATCH_MNT/$TESTFOLDER1/$FILE4 $SCRATCH_MNT/$TESTFOLDER2/$FILE5
>> +
>> +       echo "FS should be shut down, touch will fail"
>> +       touch $SCRATCH_MNT/$TESTFOLDER2/$FILE5 2>&1 | _filter_scratch
>> +
>> +       echo "Remount to replay log"
>> +       _scratch_inject_logprint >> $seqres.full
>> +
>> +       echo "FS should be online, touch should succeed"
>> +       touch $SCRATCH_MNT/$TESTFOLDER2/$FILE5
>> +
>> +       echo "Check files again"
>> +       verify_parent    "$TESTFOLDER2" "$FILE5" "$TESTFOLDER2/$FILE5"
>> +
>> +       echo "*** unmount FS"
>> +       _full "umount"
>> +       _scratch_unmount >>$seqfull 2>&1 \
>> +               || _fail "umount failed"
>> +
>> +}
>> +
>> +verify_fs
>> +
>> +echo "*** done"
>> +rm $seqfull
>> +status=0
>> +
>> +# success, all done
>> +status=0
>> +exit
>> diff --git a/tests/xfs/448.out b/tests/xfs/448.out
>> new file mode 100644
>> index 0000000..ccb2d4e
>> --- /dev/null
>> +++ b/tests/xfs/448.out
>> @@ -0,0 +1,1096 @@
>> +QA output created by 448
>> +Silence is golden.
>> +Wrote 2048.00Kb (value 0x2c)
>> +*** create FS
>> +*** check FS
>> +*** mount FS
>> +
>> +Create parent pointer test
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +
>> +Move parent pointer test
>> +*** testfolder2 OK
>> +*** testfolder2/file1 OK
>> +*** testfolder2/file1 OK
>> +*** Verified parent pointer: inode:33613312, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder2/file1 inode:16777345
>> +
>> +Hard link parent pointer test
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link OK
>> +*** testfolder1/file1_link OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link, namelen:10
>> +*** Parent pointer OK for child testfolder1/file1_link inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder2/file1 OK
>> +*** testfolder1/file1_link OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link, namelen:10
>> +*** Parent pointer OK for child testfolder2/file1 inode:16777345
>> +*** testfolder2 OK
>> +*** testfolder1/file1_link OK
>> +*** testfolder2/file1 OK
>> +*** Verified parent pointer: inode:33613312, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link inode:16777345
>> +*** testfolder2 OK
>> +*** testfolder2/file1 OK
>> +*** testfolder2/file1 OK
>> +*** Verified parent pointer: inode:33613312, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder2/file1 inode:16777345
>> +
>> +Remove hard link parent pointer test
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link OK
>> +*** testfolder1/file1_link OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link, namelen:10
>> +*** Parent pointer OK for child testfolder1/file1_link inode:16777345
>> +*** testfolder1/file1_link OK
>> +
>> +Rename parent pointer test
>> +*** testfolder1 OK
>> +*** testfolder1/file2 OK
>> +*** testfolder1/file2 OK
>> +*** Verified parent pointer: inode:16777344, name:file2, namelen:5
>> +*** Parent pointer OK for child testfolder1/file2 inode:16777345
>> +*** testfolder1/file2 OK
>> +
>> +Over write parent pointer test
>> +*** testfolder2 OK
>> +*** testfolder2/file3 OK
>> +*** testfolder2/file3 OK
>> +*** Verified parent pointer: inode:33613312, name:file3, namelen:5
>> +*** Parent pointer OK for child testfolder2/file3 inode:33613314
>> +*** testfolder1 OK
>> +*** testfolder1/file2 OK
>> +*** testfolder1/file2 OK
>> +*** Verified parent pointer: inode:16777344, name:file2, namelen:5
>> +*** Parent pointer OK for child testfolder1/file2 inode:33613314
>> +
>> +Multi link parent pointer test
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.0 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.0, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.0 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.0 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.1, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.1 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.2 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.2, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.2 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.2 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.3 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.3, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.3 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.3 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.4 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.4, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.4 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.4 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.5 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.5, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.5 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.5 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.6 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.6, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.6 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.6 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.7 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.7, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.7 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.7 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.8 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.8, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.8 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.8 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.9 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.9, namelen:12
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.9 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.9 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.10 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.10, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.10 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.10 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.11 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.11, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.11 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.11 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.12 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.12, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.12 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.12 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.13 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.13, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.13 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.13 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.14 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.14, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.14 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.14 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.15 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.15, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.15 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.15 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.16 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.16, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.16 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.16 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.17 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.17, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.17 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.17 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.18 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.18, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.18 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.18 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.19 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.19, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.19 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.19 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.20 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.20, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.20 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.20 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.21 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.21, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.21 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.21 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.22 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.22, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.22 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.22 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.23 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.23, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.23 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.23 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.24 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.24, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.24 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.24 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.25 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.25, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.25 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.25 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.26 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.26, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.26 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.26 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.27 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.27, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.27 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.27 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.28 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.28, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.28 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.28 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.29 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.29, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.29 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.29 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.30 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.30, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.30 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.30 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.31 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.31, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.31 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.31 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.32 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.32, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.32 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.32 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.33 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.33, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.33 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.33 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.34 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.34, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.34 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.34 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.35 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.35, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.35 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.35 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.36 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.36, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.36 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.36 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.37 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.37, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.37 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.37 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.38 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.38, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.38 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.38 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.39 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.39, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.39 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.39 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.40 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.40, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.40 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.40 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.41 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.41, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.41 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.41 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.42 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.42, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.42 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.42 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.43 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.43, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.43 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.43 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.44 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.44, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.44 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.44 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.45 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.45, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.45 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.45 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.46 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.46, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.46 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.46 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.47 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.47, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.47 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.47 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.48 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.48, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.48 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.48 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.49 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.49, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.49 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.49 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.50 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.50, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.50 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.50 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.51 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.51, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.51 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.51 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.52 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.52, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.52 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.52 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.53 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.53, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.53 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.53 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.54 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.54, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.54 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.54 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.55 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.55, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.55 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.55 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.56 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.56, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.56 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.56 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.57 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.57, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.57 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.57 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.58 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.58, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.58 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.58 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.59 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.59, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.59 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.59 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.60 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.60, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.60 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.60 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.61 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.61, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.61 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.61 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.62 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.62, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.62 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.62 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.63 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.63, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.63 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.63 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.64 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.64, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.64 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.64 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.65 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.65, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.65 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.65 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.66 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.66, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.66 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.66 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.67 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.67, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.67 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.67 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.68 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.68, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.68 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.68 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.69 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.69, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.69 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.69 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.70 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.70, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.70 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.70 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.71 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.71, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.71 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.71 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.72 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.72, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.72 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.72 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.73 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.73, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.73 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.73 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.74 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.74, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.74 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.74 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.75 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.75, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.75 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.75 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.76 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.76, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.76 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.76 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.77 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.77, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.77 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.77 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.78 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.78, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.78 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.78 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.79 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.79, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.79 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.79 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.80 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.80, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.80 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.80 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.81 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.81, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.81 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.81 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.82 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.82, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.82 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.82 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.83 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.83, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.83 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.83 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.84 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.84, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.84 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.84 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.85 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.85, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.85 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.85 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.86 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.86, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.86 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.86 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.87 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.87, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.87 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.87 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.88 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.88, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.88 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.88 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.89 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.89, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.89 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.89 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.90 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.90, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.90 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.90 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.91 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.91, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.91 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.91 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.92 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.92, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.92 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.92 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.93 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.93, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.93 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.93 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.94 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.94, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.94 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.94 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.95 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.95, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.95 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.95 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.96 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.96, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.96 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.96 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.97 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.97, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.97 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.97 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.98 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.98, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.98 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.98 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1 OK
>> +*** testfolder1/file1_link.99 OK
>> +*** Verified parent pointer: inode:16777344, name:file1_link.99, namelen:13
>> +*** Parent pointer OK for child testfolder1/file1 inode:16777345
>> +*** testfolder1 OK
>> +*** testfolder1/file1_link.99 OK
>> +*** testfolder1/file1 OK
>> +*** Verified parent pointer: inode:16777344, name:file1, namelen:5
>> +*** Parent pointer OK for child testfolder1/file1_link.99 inode:16777345
>> +Multi unlink parent pointer test
>> +
>> +Error inject test
>> +Create files
>> +*** testfolder1 OK
>> +*** testfolder1/file4 OK
>> +*** testfolder1/file4 OK
>> +*** Verified parent pointer: inode:16777344, name:file4, namelen:5
>> +*** Parent pointer OK for child testfolder1/file4 inode:16777346
>> +Inject error
>> +Move files
>> +mv: cannot move '/mnt/scratch/testfolder1/file4' to '/mnt/scratch/testfolder2/file5': Input/output error
>> +FS should be shut down, touch will fail
>> +touch: cannot touch 'SCRATCH_MNT/testfolder2/file5': Input/output error
>> +Remount to replay log
>> +FS should be online, touch should succeed
>> +Check files again
>> +*** testfolder2 OK
>> +*** testfolder2/file5 OK
>> +*** testfolder2/file5 OK
>> +*** Verified parent pointer: inode:33613312, name:file5, namelen:5
>> +*** Parent pointer OK for child testfolder2/file5 inode:16777346
>> +*** unmount FS
>> +*** done
>> diff --git a/tests/xfs/group b/tests/xfs/group
>> index 2319f58..fb74e82 100644
>> --- a/tests/xfs/group
>> +++ b/tests/xfs/group
>> @@ -445,3 +445,4 @@
>>  445 auto quick filestreams
>>  446 auto quick
>>  447 auto mount
>> +448 auto

Isn't this test quick?

Thanks,
Amir.
--
To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux