X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Ftests%2Ftest-framework.sh;h=c21e281dd6577ad7e260725af5ddbcdb37abb75c;hp=1ba7de59b3bfface047defd25b61cf57ee855391;hb=5d0201db65d366d8905a28d103a2a9b511c22ca7;hpb=0b554ff27b7cd282694a9d33728f2e48a10372f3 diff --git a/lustre/tests/test-framework.sh b/lustre/tests/test-framework.sh index 1ba7de5..c21e281 100644 --- a/lustre/tests/test-framework.sh +++ b/lustre/tests/test-framework.sh @@ -263,12 +263,15 @@ init_test_env() { rm -f $TMP/*active } -kernel_version() { +version_code() { + # split arguments like "1.8.6-wc3" into "1", "8", "6", "wc3" + eval set -- $(tr "[:punct:]" " " <<< $*) + echo -n $((($1 << 16) | ($2 << 8) | $3)) } export LINUX_VERSION=$(uname -r | sed -e "s/[-.]/ /3" -e "s/ .*//") -export LINUX_VERSION_CODE=$(kernel_version ${LINUX_VERSION//\./ }) +export LINUX_VERSION_CODE=$(version_code ${LINUX_VERSION//\./ }) case `uname -r` in 2.4.*) EXT=".o"; USE_QUOTA=no; [ ! "$CLIENTONLY" ] && FSTYPE=ext3;; @@ -2451,12 +2454,6 @@ osc_ensure_active () { } init_param_vars () { - if ! remote_ost_nodsh && ! remote_mds_nodsh; then - export MDSVER=$(do_facet $SINGLEMDS "lctl get_param version" | cut -d. -f1,2) - export OSTVER=$(do_facet ost1 "lctl get_param version" | cut -d. -f1,2) - export CLIVER=$(lctl get_param version | cut -d. -f 1,2) - fi - remote_mds_nodsh || TIMEOUT=$(do_facet $SINGLEMDS "lctl get_param -n timeout") @@ -3706,7 +3703,8 @@ is_patchless () } check_versions () { - [ "$MDSVER" = "$CLIVER" -a "$OSTVER" = "$CLIVER" ] + [ "$(lustre_version_code client)" = "$(lustre_version_code $SINGLEMDS)" -a \ + "$(lustre_version_code client)" = "$(lustre_version_code ost1)" ] } get_node_count() { @@ -3992,19 +3990,12 @@ get_clientosc_proc_path() { get_lustre_version () { local facet=${1:-"$SINGLEMDS"} - do_facet $facet $LCTL get_param -n version | awk '/^lustre:/ {print $2}' -} - -get_mds_version_major () { - local facet=${1:-"$SINGLEMDS"} - local version=$(get_lustre_version $facet) - echo $version | awk -F. '{print $1}' + do_facet $facet $LCTL get_param -n version | awk '/^lustre:/ {print $2}' } -get_mds_version_minor () { +lustre_version_code() { local facet=${1:-"$SINGLEMDS"} - local version=$(get_lustre_version $facet) - echo $version | awk -F. '{print $2}' + version_code $(get_lustre_version $1) } # If the 2.0 MDS was mounted on 1.8 device, then the OSC and LOV names @@ -4013,10 +4004,8 @@ get_mds_version_minor () { # mdt osc: fsname-OSTXXXX-osc mds_on_old_device() { local mds=${1:-"$SINGLEMDS"} - local major=$(get_mds_version_major $mds) - local minor=$(get_mds_version_minor $mds) - if [ $major -ge 2 ] || [ $major -eq 1 -a $minor -gt 8 ]; then + if [ $(lustre_version_code $mds) -gt $(version_code 1.9.0) ]; then do_facet $mds "lctl list_param osc.$FSNAME-OST*-osc \ > /dev/null 2>&1" && return 0 fi @@ -4031,9 +4020,8 @@ get_mdtosc_proc_path() { local mdt_label=$(convert_facet2label $mds_facet) local mdt_index=$(echo $mdt_label | sed -e 's/^.*-//') - local major=$(get_mds_version_major $mds_facet) - local minor=$(get_mds_version_minor $mds_facet) - if [ $major -le 1 -a $minor -le 8 ] || mds_on_old_device $mds_facet; then + if [ $(lustre_version_code $mds_facet) -le $(version_code 1.8.0) ] || + mds_on_old_device $mds_facet; then echo "${ost_label}-osc" else echo "${ost_label}-osc-${mdt_index}"