Skip to content

Commit d3a1fa1

Browse files
authored
Merge pull request #28 from nmorey/master
Support for SL16.0
2 parents 38540b1 + 6d2e700 commit d3a1fa1

File tree

9 files changed

+76
-35
lines changed

9 files changed

+76
-35
lines changed

helpers/common.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ load_helpers()
111111
local test_type=$2
112112

113113
source ${topdir}/helpers/julog.sh
114-
for helper in $(ls ${topdir}/helpers/${test_type}/[0-9][0-9]* | egrep -v '*~$'); do
114+
for helper in $(ls ${topdir}/helpers/${test_type}/[0-9][0-9]* | grep -E -v '.*~$'); do
115115
source ${helper}
116116
done
117117
}

helpers/common/00-cleanup

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -57,33 +57,37 @@ get_common_package_list()
5757
local host=$1
5858
PACKAGE_LIST="infiniband-diags rdma-ndd libibverbs-utils srp_daemon fabtests "
5959
PACKAGE_LIST+=" mpitests-mvapich2"
60-
PACKAGE_LIST+=" ibutils dapl-utils psmisc nfs-kernel-server"
60+
PACKAGE_LIST+=" ibutils psmisc nfs-kernel-server"
6161
PACKAGE_LIST+=" nvme-cli nvmetcli bc iputils"
6262

6363
case $(get_suse_version $host) in
6464
15|15.1)
65-
PACKAGE_LIST+=" python3-targetcli-fb "
65+
PACKAGE_LIST+=" python3-targetcli-fb dapl-utils "
6666
PACKAGE_LIST+=" mpitests-openmpi2 mpitests-mpich"
6767
;;
6868
15.2|15.3)
69-
PACKAGE_LIST+=" python3-targetcli-fb "
69+
PACKAGE_LIST+=" python3-targetcli-fb dapl-utils "
7070
PACKAGE_LIST+=" mpitests-openmpi2 mpitests-mpich"
7171
PACKAGE_LIST+=" mpitests-openmpi3"
7272
;;
7373
15.4|15.5)
74-
PACKAGE_LIST+=" python3-targetcli-fb "
74+
PACKAGE_LIST+=" python3-targetcli-fb dapl-utils "
7575
PACKAGE_LIST+=" mpitests-openmpi2 mpitests-mpich"
7676
PACKAGE_LIST+=" mpitests-openmpi3 mpitests-openmpi4"
7777
;;
7878
15.6|15.7)
79-
PACKAGE_LIST+=" python3-targetcli-fb "
79+
PACKAGE_LIST+=" python3-targetcli-fb dapl-utils "
8080
PACKAGE_LIST+=" mpitests-openmpi4 mpitests-mpich"
8181
;;
82+
16.0)
83+
PACKAGE_LIST+=" targetcli-fb "
84+
PACKAGE_LIST+=" mpitests-openmpi4 mpitests-openmpi5 mpitests-mpich"
85+
;;
8286
42.3|12.3|12.4|12.5)
83-
PACKAGE_LIST+=" mpitests-openmpi targetcli-fb "
87+
PACKAGE_LIST+=" mpitests-openmpi targetcli-fb dapl-utils "
8488
;;
8589
2022*)
86-
PACKAGE_LIST+=" python3-targetcli-fb "
90+
PACKAGE_LIST+=" python3-targetcli-fb dapl-utils "
8791
PACKAGE_LIST+=" mpitests-openmpi2 mpitests-mpich"
8892
PACKAGE_LIST+=" mpitests-openmpi3 mpitests-openmpi4"
8993
;;
@@ -117,4 +121,4 @@ check_existing_sw_rdma_if()
117121
echo "No SW RDMA found as expected"
118122
fi
119123
return $n_rdma
120-
}
124+
}

helpers/common/01-fabric-init

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,13 @@ setup_ssh()
2525
ssh-keyscan $remote_ip >> .ssh/known_hosts"
2626
}
2727

28+
nmcli_disable()
29+
{
30+
local host=$1
31+
local port=$2
32+
tp $host "nmcli device set $port managed no || true"
33+
}
34+
2835
get_srdma_port()
2936
{
3037
local host=$1

helpers/common/05-nfs

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,19 @@ test_nfs()
3333
echo 'rdma 20049' > /proc/fs/nfsd/portlist &&
3434
exportfs -a &&
3535
dd if=/dev/urandom bs=1M count=64 of=/tmp/RAM/input"
36-
36+
mountpoint=""
37+
case $(get_suse_version $server) in
38+
16.0)
39+
# NFSv4
40+
mountpoint="/"
41+
;;
42+
*)
43+
mountpoint="/tmp/RAM"
44+
;;
45+
esac
3746
tp $client "modprobe xprtrdma &&
3847
mkdir -p /tmp/RAM &&
39-
mount -o rdma,port=20049 $server_ip:/tmp/RAM /tmp/RAM &&
48+
mount -o rdma,port=20049 $server_ip:$mountpoint /tmp/RAM &&
4049
(cat /proc/mounts | grep /tmp/RAM | grep proto=rdma) &&
4150
sleep 1 &&
4251
dd if=/tmp/RAM/input bs=1M count=1024 of=/tmp/RAM/output &&

helpers/common/08-mpi

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,10 @@ openmpi3--btl=ofi--pml=^ucx,\
2222
openmpi3--btl=self--pml=ucx,\
2323
openmpi4,\
2424
openmpi4--btl=ofi--pml=^ucx,\
25-
openmpi4--btl=self--pml=ucx"
25+
openmpi4--btl=self--pml=ucx,\
26+
openmpi5,\
27+
openmpi5--btl=ofi--pml=cm,\
28+
openmpi5--btl=uct--pml=ucx"
2629

2730
export MPI_FLAVOURS=${MPI_FLAVOURS:-$DEFAULT_MPI_FLAVOURS}
2831

@@ -45,7 +48,7 @@ test_mpi()
4548
openmpi|openmpi2)
4649
RUN_ARGS="${RUN_ARGS} --allow-run-as-root"
4750
;;
48-
openmpi3|openmpi4)
51+
openmpi3|openmpi4|openmpi5)
4952
RUN_ARGS="${RUN_ARGS} --allow-run-as-root --oversubscribe"
5053
;;
5154
esac
@@ -76,19 +79,22 @@ mpi_get_flavors()
7679
local flavours=$2
7780
case $(get_suse_version $host) in
7881
15|15.1)
79-
flavours=$(mpi_filter_flavour $flavours openmpi openmpi3 openmpi4)
82+
flavours=$(mpi_filter_flavour $flavours openmpi openmpi3 openmpi4 openmpi5)
8083
;;
8184
15.2|15.3)
82-
flavours=$(mpi_filter_flavour $flavours openmpi openmpi4)
85+
flavours=$(mpi_filter_flavour $flavours openmpi openmpi4 openmpi5)
8386
;;
8487
15.4|15.5)
85-
flavours=$(mpi_filter_flavour $flavours openmpi)
88+
flavours=$(mpi_filter_flavour $flavours openmpi openmpi5)
8689
;;
8790
15.6|15.7)
91+
flavours=$(mpi_filter_flavour $flavours openmpi openmpi2 openmpi3 openmpi5)
92+
;;
93+
16.0)
8894
flavours=$(mpi_filter_flavour $flavours openmpi openmpi2 openmpi3)
8995
;;
9096
12.3|12.4|12.5)
91-
flavours=$(mpi_filter_flavour $flavours openmpi2 openmpi3 openmpi4 mpich)
97+
flavours=$(mpi_filter_flavour $flavours openmpi2 openmpi3 openmpi4 openmpi5 mpich)
9298
;;
9399
*)
94100
# N/A

helpers/common/09-libfabric

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ test_libfabric()
2828
15.6)
2929
skipped_tests=""
3030
;;
31-
15.7)
31+
15.7|16.0)
3232
skipped_tests="-e fi_dgram_pingpong"
3333
;;
3434
*)

helpers/ib/02-ipoib

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,12 @@ set_ipoib_up()
3131
local host=$1
3232
local port=$2
3333
local ipaddr=$3 #ip/netmask
34+
local ipv6addr=$4
3435

3536
tp $host "ip link set dev $port up &&
3637
ip -4 addr flush $port &&
37-
ip addr add $ipaddr dev $port"
38+
ip addr add $ipaddr dev $port &&
39+
(ip addr add $ipv6addr dev $port || true)"
3840
}
3941
set_ipoib_down()
4042
{
@@ -67,18 +69,20 @@ driver_resetup()
6769
local host1=$3
6870
local ipport1=$4
6971
local ip1=$5
72+
local ipv6_1=$6
7073

71-
local host2=$6
72-
local ipport2=$7
73-
local ip2=$8
74+
local host2=$7
75+
local ipport2=$8
76+
local ip2=$9
77+
local ipv6_2=${10}
7478

7579
ip1_setup=""
7680
if [ "$ip1" != "" ]; then
77-
ip1_setup="&& set_ipoib_up $host1 $ipport1 $ip1/24"
81+
ip1_setup="&& set_ipoib_up $host1 $ipport1 $ip1/24 $ipv6_1"
7882
fi
7983
ip2_setup=""
8084
if [ "$ip2" != "" ]; then
81-
ip2_setup="&& set_ipoib_up $host2 $ipport2 $ip2/24"
85+
ip2_setup="&& set_ipoib_up $host2 $ipport2 $ip2/24 $ipv6_2"
8286
fi
8387

8488
if [ $DO_MAD -eq 1 ]; then
@@ -106,7 +110,7 @@ test_ping6()
106110
local remote_addr=$3
107111
local pkt_size=$4
108112

109-
tp $host "ip neigh flush $remote_addr && ping6 -fq -t 3 -c 10000 -w 10 -I $interface -s $pkt_size $remote_addr"
113+
tp $host "ip neigh flush $remote_addr && ping6 -fq -t 3 -c 10000 -w 10 -I $interface -s $pkt_size ${remote_addr}%${interface}"
110114
}
111115

112116
test_sftp()

helpers/ib/06-dapl

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,14 @@ test_dapl(){
2121
local ib2=$4
2222
local ip2=$5
2323

24+
case $(get_suse_version $host1) in
25+
16.0)
26+
return 0
27+
;;
28+
*)
29+
;;
30+
esac
31+
2432
local dapl_name1=$(tpq $host1 "grep '$ib1' /etc/dat.conf | head -n 1 | awk '{print \$1}'")
2533
local dapl_name2=$(tpq $host2 "grep '$ib2' /etc/dat.conf | head -n 1 | awk '{print \$1}'")
2634

ib-test.sh

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,16 @@ run_phase 1 phase_1_1 "Fabric init (1/2)"
135135
# Do not wrap these as they export needed variables
136136
get_port $HOST1 1
137137
get_port $HOST2 2
138+
#Get IPv6 IPs
139+
IP6_1=$(tpq $HOST1 "ip addr show $IPPORT1" | ip_addr_show_to_ipv6)
140+
IP6_2=$(tpq $HOST2 "ip addr show $IPPORT2" | ip_addr_show_to_ipv6)
138141

139142
phase_1_2(){
140-
juLog_fatal -name=h1_ip_setup "set_ipoib_down $HOST1 $IPPORT1; set_ipoib_up $HOST1 $IPPORT1 $IP1/24"
141-
juLog_fatal -name=h2_ip_setup "set_ipoib_down $HOST2 $IPPORT2; set_ipoib_up $HOST2 $IPPORT2 $IP2/24"
143+
juLog_fatal -name=h1_disable_nm "nmcli_disable $HOST1 $IPPORT1"
144+
juLog_fatal -name=h2_disable_nm "nmcli_disable $HOST2 $IPPORT2"
145+
146+
juLog_fatal -name=h1_ip_setup "set_ipoib_down $HOST1 $IPPORT1; set_ipoib_up $HOST1 $IPPORT1 $IP1/24 $IP6_1"
147+
juLog_fatal -name=h2_ip_setup "set_ipoib_down $HOST2 $IPPORT2; set_ipoib_up $HOST2 $IPPORT2 $IP2/24 $IP6_2"
142148

143149
# Let IP settle down or SSH key setup might fail
144150
sleep 5
@@ -160,9 +166,6 @@ phase_1_2(){
160166

161167
run_phase 1 phase_1_2 "Fabric init (2/2)"
162168

163-
#Get IPv6 IPs
164-
IP6_1=$(tpq $HOST1 "ip addr show $IPPORT1" | ip_addr_show_to_ipv6)
165-
IP6_2=$(tpq $HOST2 "ip addr show $IPPORT2" | ip_addr_show_to_ipv6)
166169

167170
juLog_fatal -name=h1_check_ipv6 "[[ \"$IP6_1\" != \"\" ]]"
168171
juLog_fatal -name=h2_check_ipv6 "[[ \"$IP6_2\" != \"\" ]]"
@@ -175,7 +178,7 @@ juLog_fatal -name=h2_check_ipv6 "[[ \"$IP6_2\" != \"\" ]]"
175178
phase_2(){
176179
local reload_driver=0
177180

178-
driver_resetup "reload_mlx5_driver" reload_mlx5_ib $HOST1 $IPPORT1 $IP1 $HOST2 $IPPORT2 $IP2
181+
driver_resetup "reload_mlx5_driver" reload_mlx5_ib $HOST1 $IPPORT1 $IP1 $IP6_1 $HOST2 $IPPORT2 $IP2 $IP6_2
179182

180183
# Check if both cards support connected mode
181184
if ! (is_connected_supported $HOST1 $IPPORT1 && is_connected_supported $HOST2 $IPPORT2); then
@@ -199,17 +202,17 @@ phase_2(){
199202
fi
200203
reload_driver=1
201204

202-
driver_resetup "disable_enhanced" disable_enhanced $HOST1 "" "" $HOST2 "" ""
205+
driver_resetup "disable_enhanced" disable_enhanced $HOST1 "" "" "" $HOST2 "" "" ""
203206
fi
204207

205208
for mode in $(echo $IPOIB_MODES | sed -e 's/,/ /g'); do
206209
juLog_fatal -name=h1_${mode}_ip_mode "set_ipoib_mode $HOST1 $IPPORT1 $mode"
207210
juLog_fatal -name=h1_${mode}_ip_down "set_ipoib_down $HOST1 $IPPORT1"
208-
juLog_fatal -name=h1_${mode}_ip_up "set_ipoib_up $HOST1 $IPPORT1 $IP1/24"
211+
juLog_fatal -name=h1_${mode}_ip_up "set_ipoib_up $HOST1 $IPPORT1 $IP1/24 $IP6_1"
209212

210213
juLog_fatal -name=h2_${mode}_ip_mode "set_ipoib_mode $HOST2 $IPPORT2 $mode"
211214
juLog_fatal -name=h2_${mode}_ip_down "set_ipoib_down $HOST2 $IPPORT2"
212-
juLog_fatal -name=h2_${mode}_ip_up "set_ipoib_up $HOST2 $IPPORT2 $IP2/24"
215+
juLog_fatal -name=h2_${mode}_ip_up "set_ipoib_up $HOST2 $IPPORT2 $IP2/24 $IP6_2"
213216

214217
for size in 511 1025 2044 8192 32768 65492; do
215218
juLog -name=h1_${mode}_ping_$size "test_ping $HOST1 $IP2 $size"
@@ -225,7 +228,7 @@ phase_2(){
225228
done
226229
if [ $reload_driver -eq 1 ]; then
227230
# Put the driver back in enhanced mode and make sure IPoIB Ifs are reconfigured
228-
driver_resetup "enable_enhanced" enable_enhanced $HOST1 $IPPORT1 $IP1 $HOST2 $IPPORT2 $IP2
231+
driver_resetup "enable_enhanced" enable_enhanced $HOST1 $IPPORT1 $IP1 $IP6_1 $HOST2 $IPPORT2 $IP2 $IP6_2
229232
fi
230233
}
231234
run_phase 2 phase_2 "IPoIB"

0 commit comments

Comments
 (0)