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