[ "$SLOW" = "no" ] && EXCEPT_SLOW="24o 27m 64b 68 71 77f 78 115 124b 230d"
-[ $(facet_fstype $SINGLEMDS) = "zfs" ] &&
-# bug number for skipped test: LU-1593 LU-2833 LU-1957 LU-2805
- ALWAYS_EXCEPT="$ALWAYS_EXCEPT 34h 48a 180 184c"
+if [ $(facet_fstype $SINGLEMDS) = "zfs" ]; then
+ # bug number for skipped test: LU-1593 LU-1957 LU-2805
+ ALWAYS_EXCEPT="$ALWAYS_EXCEPT 34h 180 184c"
+ [ "$SLOW" = "no" ] && EXCEPT_SLOW="$EXCEPT_SLOW 51b 51ba"
+fi
FAIL_ON_ERROR=false
# test_47 is removed "Device nodes check" is moved to test_28
test_48a() { # bug 2399
+ [ $(facet_fstype $SINGLEMDS) = "zfs" ] &&
+ [ $(lustre_version_code $SINGLEMDS) -lt $(version_code 2.3.63) ] &&
+ skip "MDS prior to 2.3.63 handle ZFS dir .. incorrectly" &&
+ return
check_kernel_version 34 || return 0
test_mkdir -p $DIR/$tdir
cd $DIR/$tdir
test_mkdir -p -c1 $BASE
+ $LFS df
+ $LFS df -i
local mdtidx=$(printf "%04x" $($LFS getstripe -M $BASE))
local numfree=$(lctl get_param -n mdc.$FSNAME-MDT$mdtidx*.filesfree)
- [[ $numfree -lt 21000 ]] && skip "not enough free inodes ($numfree)" &&
+ [[ $numfree -lt 21000 ]] &&
+ skip "not enough free inodes ($numfree) on MDT$mdtidx" &&
return
[[ $numfree -lt $NUMTEST ]] && NUMTEST=$(($numfree - 50)) &&
- echo "reduced count to $NUMTEST due to inodes"
+ echo "reduced count to $NUMTEST due to inodes on MDT$mdtidx"
# need to check free space for the directories as well
local blkfree=$(lctl get_param -n mdc.$FSNAME-MDT$mdtidx*.kbytesavail)
numfree=$((blkfree / 4))
- [[ $numfree -lt $NUMTEST ]] && NUMTEST=$(($numfree - 50)) &&
- echo "reduced count to $NUMTEST due to blocks"
+ [[ $numfree -lt $NUMTEST ]] && NUMTEST=$((numfree - 50)) &&
+ echo "reduced count to $NUMTEST due to blocks on MDT$mdtidx"
createmany -d $BASE/d $NUMTEST && echo $NUMTEST > $BASE/fnum ||
+ {
+ $LFS df
+ $LFS df -i
echo "failed" > $BASE/fnum
+ error "failed to create $NUMTEST subdirs in MDT$mdtidx:$BASE"
+ }
}
run_test 51b "exceed 64k subdirectory nlink limit"
setfattr --remove=$trusted.$name $file1 2> /dev/null
done
+ if [ $(lustre_version_code $SINGLEMDS) -gt $(version_code 2.6.50) ]
+ then
+ name="lfsck_ns"
+ # Try to copy xattr from $file0 to $file1.
+ value=$(getxattr $file0 trusted.$name 2> /dev/null)
+
+ setfattr --name=trusted.$name --value="$value" $file1 ||
+ error "setxattr 'trusted.$name' failed"
+
+ # Try to set a garbage xattr.
+ value=0sVGhlIHF1aWNrIGJyb3duIGZveCBqdW1wcyBvdmVyIGl0c2VsZi4=
+
+ setfattr --name=trusted.$name --value="$value" $file1 ||
+ error "setxattr 'trusted.$name' failed"
+
+ # Try to remove the xattr from $file1. We don't care if this
+ # appears to succeed or fail, we just don't want there to be
+ # any changes or crashes.
+ setfattr --remove=$trusted.$name $file1 2> /dev/null
+ fi
+
# Get 'after' xattrs of file1.
getfattr --absolute-names --dump --match=- $file1 > $xattr1
skip_env "could not find setfacl" && return
$GSS && skip "could not run under gss" && return
- gpasswd -a daemon bin # LU-5641
+ gpasswd -a daemon bin # LU-5641
+ do_facet $SINGLEMDS gpasswd -a daemon bin # LU-5641
declare -a identity_old
jobids=$($LFS changelog $MDT0 | tail -9 | grep -c "j=")
[ $jobids -eq 9 ] ||
error "Wrong changelog jobid count $jobids != 9"
+
+ # LU-5862
+ JOBENV="disable"
+ jobstats_set $JOBENV
+ touch $DIR/$tfile
+ $LFS changelog $MDT0 | tail -1
+ jobids=$($LFS changelog $MDT0 | tail -1 | grep -c "j=")
+ [ $jobids -eq 0 ] ||
+ error "Unexpected jobids when jobid_var=$JOBENV"
fi
# cleanup