Whamcloud - gitweb
LU-12784 llite: limit max xattr size by kernel value
[fs/lustre-release.git] / lustre / tests / conf-sanity.sh
index 7b3f25a..23d434a 100644 (file)
@@ -175,16 +175,11 @@ stop_ost2() {
 }
 
 mount_client() {
-       local MOUNTPATH=$1
-       echo "mount $FSNAME on ${MOUNTPATH}....."
-       zconf_mount $(hostname) $MOUNTPATH || return 96
-}
+       local mountpath=$1
+       local mountopt="$2"
 
-remount_client() {
-       local mountopt="remount,$1"
-       local MOUNTPATH=$2
-       echo "remount '$1' lustre on ${MOUNTPATH}....."
-       zconf_mount $(hostname) $MOUNTPATH "$mountopt" || return 96
+       echo "mount $FSNAME ${mountopt:+with opts $mountopt} on $mountpath....."
+       zconf_mount $HOSTNAME $mountpath $mountopt || return 96
 }
 
 umount_client() {
@@ -706,10 +701,10 @@ test_20() {
        mount_client $MOUNT || error "mount_client $MOUNT failed"
        check_mount || error "check_mount failed"
        rm -f $DIR/$tfile || error "remove $DIR/$tfile failed."
-       remount_client ro $MOUNT || error "remount_client with ro failed"
+       mount_client $MOUNT remount,ro || error "remount client with ro failed"
        touch $DIR/$tfile && error "$DIR/$tfile created incorrectly"
        [ -e $DIR/$tfile ] && error "$DIR/$tfile exists incorrectly"
-       remount_client rw $MOUNT || error "remount_client with rw failed"
+       mount_client $MOUNT remount,rw || error "remount client with rw failed"
        touch $DIR/$tfile || error "touch $DIR/$tfile failed"
        MCNT=$(grep -c $MOUNT' ' /etc/mtab)
        [ "$MCNT" -ne 1 ] && error "$MOUNT in /etc/mtab $MCNT times"
@@ -3511,16 +3506,13 @@ test_48() { # bz-17636 LU-7473
        # LOV EA, and so on. These EA will use some EA space that is shared by
        # ACL entries. So here we only check some reasonable ACL entries count,
        # instead of the max number that is calculated from the max_ea_size.
-       if [ "$MDS1_VERSION" -lt $(version_code 2.8.57) ];
-       then
+       if [ "$MDS1_VERSION" -lt $(version_code 2.8.57) ]; then
                count=28        # hard coded of RPC protocol
-       elif [ "$mds1_FSTYPE" != ldiskfs ]; then
-               count=4000      # max_num 4091 max_ea_size = ~65536
-       elif ! large_xattr_enabled; then
-               count=450       # max_num 497 max_ea_size = 4012
-       else
+       elif large_xattr_enabled; then
                count=4500      # max_num 8187 max_ea_size = 65452
-                               # not create too much (>5000) to save test time
+                               # not create too many (4500) to save test time
+       else
+               count=450       # max_num 497 max_ea_size = 4012
        fi
 
        echo "It is expected to hold at least $count ACL entries"
@@ -5864,22 +5856,15 @@ test_81() { # LU-4665
 
        # Check max_easize.
        local max_easize=$($LCTL get_param -n llite.*.max_easize)
-       if [ $MDS1_VERSION -lt $(version_code 2.12.51) ]
-       then
-               [[ $max_easize -eq 128 ]] ||
-                       error "max_easize is $max_easize, should be 128 bytes"
+       # 65452 is XATTR_SIZE_MAX less ldiskfs ea overhead
+       if large_xattr_enabled; then
+               [[ $max_easize -ge 65452 ]] ||
+                       error "max_easize is $max_easize, should be at least 65452 bytes"
        else
                # LU-11868
-               # 4012 is 4096 - ldiskfs ea overhead
+               # 4012 is 4096 less ldiskfs ea overhead
                [[ $max_easize -ge 4012 ]] ||
-               error "max_easize is $max_easize, should be at least 4012 bytes"
-
-               # 65452 is XATTR_SIZE_MAX - ldiskfs ea overhead
-               if large_xattr_enabled;
-               then
-                       [[ $max_easize -ge 65452 ]] ||
-                       error "max_easize is $max_easize, should be at least 65452 bytes"
-               fi
+                       error "max_easize is $max_easize, should be at least 4012 bytes"
        fi
 
        restore_ostindex
@@ -7265,7 +7250,7 @@ test_98()
        for ((x = 1; x <= 400; x++)); do
                mountopt="$mountopt,user_xattr"
        done
-       remount_client $mountopt $MOUNT  2>&1 | grep "too long" ||
+       mount_client $MOUNT remount,$mountopt 2>&1 | grep "too long" ||
                error "Buffer overflow check failed"
        cleanup || error "cleanup failed"
 }
@@ -7408,34 +7393,34 @@ test_renamefs() {
        echo "rename $FSNAME to $newname"
 
        if ! combined_mgs_mds ; then
-               local facet=$(mgsdevname)
+               local dev=$(mgsdevname)
 
                do_facet mgs \
-                       "$TUNEFS --fsname=$newname --rename=$FSNAME -v $facet"||
-                       error "(7) Fail to rename MGS"
-               if [ "$(facet_fstype $facet)" = "zfs" ]; then
+                       "$TUNEFS --fsname=$newname --rename=$FSNAME -v $dev" ||
+                               error "(7) Fail to rename MGS"
+               if [ "$(facet_fstype mgs)" = "zfs" ]; then
                        reimport_zpool mgs $newname-mgs
                fi
        fi
 
        for num in $(seq $MDSCOUNT); do
-               local facet=$(mdsdevname $num)
+               local dev=$(mdsdevname $num)
 
                do_facet mds${num} \
-                       "$TUNEFS --fsname=$newname --rename=$FSNAME -v $facet"||
-                       error "(8) Fail to rename MDT $num"
-               if [ "$(facet_fstype $facet)" = "zfs" ]; then
+                       "$TUNEFS --fsname=$newname --rename=$FSNAME -v $dev" ||
+                               error "(8) Fail to rename MDT $num"
+               if [ "$(facet_fstype mds${num})" = "zfs" ]; then
                        reimport_zpool mds${num} $newname-mdt${num}
                fi
        done
 
        for num in $(seq $OSTCOUNT); do
-               local facet=$(ostdevname $num)
+               local dev=$(ostdevname $num)
 
                do_facet ost${num} \
-                       "$TUNEFS --fsname=$newname --rename=$FSNAME -v $facet"||
-                       error "(9) Fail to rename OST $num"
-               if [ "$(facet_fstype $facet)" = "zfs" ]; then
+                       "$TUNEFS --fsname=$newname --rename=$FSNAME -v $dev" ||
+                               error "(9) Fail to rename OST $num"
+               if [ "$(facet_fstype ost${num})" = "zfs" ]; then
                        reimport_zpool ost${num} $newname-ost${num}
                fi
        done
@@ -7527,7 +7512,7 @@ test_103() {
 }
 run_test 103 "rename filesystem name"
 
-test_104() { # LU-6952
+test_104a() { # LU-6952
        local mds_mountopts=$MDS_MOUNT_OPTS
        local ost_mountopts=$OST_MOUNT_OPTS
        local mds_mountfsopts=$MDS_MOUNT_FS_OPTS
@@ -7577,7 +7562,22 @@ test_104() { # LU-6952
        OST_MOUNT_OPTS=$ost_mountopts
        MDS_MOUNT_FS_OPTS=$mds_mountfsopts
 }
-run_test 104 "Make sure user defined options are reflected in mount"
+run_test 104a "Make sure user defined options are reflected in mount"
+
+test_104b() { # LU-12859
+       mount_client $MOUNT3 flock,localflock
+       stack_trap "umount_client $MOUNT3" EXIT
+       mount | grep "$MOUNT3 .*,flock" && error "flock is still set"
+       mount | grep "$MOUNT3 .*,localflock" || error "localflock is not set"
+       umount_client $MOUNT3
+       mount_client $MOUNT3 localflock,flock
+       mount | grep "$MOUNT3 .*,localflock" && error "localflock is still set"
+       mount | grep "$MOUNT3 .*,flock" || error "flock is not set"
+       umount_client $MOUNT3
+       mount_client $MOUNT3 localflock,flock,noflock
+       flock_is_enabled $MOUNT3 && error "some flock is still enabled" || true
+}
+run_test 104b "Mount uses last flock argument"
 
 error_and_umount() {
        umount $TMP/$tdir