summaryrefslogtreecommitdiffstats
path: root/0007-TEST-50-MULTINIC-fixup-test-suite.patch
blob: b59275cbc10c07f60d83f546b992269765f60451 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
From a8986425a4af56a50c8986228e2df04efc5f9edf Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Fri, 5 Apr 2013 11:05:39 +0200
Subject: [PATCH] TEST-50-MULTINIC: fixup test suite

qemu of the day doesn't like multicast anymore
---
 test/TEST-50-MULTINIC/server-init.sh | 54 +++++++++++++++++++++++++++++++++---
 test/TEST-50-MULTINIC/test.sh        | 23 +++++++--------
 2 files changed, 60 insertions(+), 17 deletions(-)

diff --git a/test/TEST-50-MULTINIC/server-init.sh b/test/TEST-50-MULTINIC/server-init.sh
index 144f83c..5a8359b 100755
--- a/test/TEST-50-MULTINIC/server-init.sh
+++ b/test/TEST-50-MULTINIC/server-init.sh
@@ -7,11 +7,53 @@ export PS1='nfstest-server:\w\$ '
 stty sane
 echo "made it to the rootfs!"
 echo server > /proc/sys/kernel/hostname
+
+wait_for_if_link() {
+    local cnt=0
+    local li
+    while [ $cnt -lt 600 ]; do
+        li=$(ip -o link show dev $1 2>/dev/null)
+        [ -n "$li" ] && return 0
+        sleep 0.1
+        cnt=$(($cnt+1))
+    done
+    return 1
+}
+
+wait_for_if_up() {
+    local cnt=0
+    local li
+    while [ $cnt -lt 200 ]; do
+        li=$(ip -o link show up dev $1)
+        [ -n "$li" ] && return 0
+        sleep 0.1
+        cnt=$(($cnt+1))
+    done
+    return 1
+}
+
+wait_for_route_ok() {
+    local cnt=0
+    while [ $cnt -lt 200 ]; do
+        li=$(ip route show)
+        [ -n "$li" ] && [ -z "${li##*$1*}" ] && return 0
+        sleep 0.1
+        cnt=$(($cnt+1))
+    done
+    return 1
+}
+
+linkup() {
+    wait_for_if_link $1 2>/dev/null\
+     && ip link set $1 up 2>/dev/null\
+     && wait_for_if_up $1 2>/dev/null
+}
+
 >/dev/watchdog
 ip addr add 127.0.0.1/8 dev lo
-ip link set lo up
+linkup lo
 ip addr add 192.168.50.1/24 dev eth0
-ip link set eth0 up
+linkup eth0
 >/dev/watchdog
 modprobe af_packet
 > /dev/watchdog
@@ -42,10 +84,14 @@ exportfs -r
 chmod 777 /var/lib/dhcpd/dhcpd.leases
 >/dev/watchdog
 dhcpd -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases
-echo -n 'V' > /dev/watchdog
+#echo -n 'V' > /dev/watchdog
 #sh -i
+#tcpdump -i eth0
 # Wait forever for the VM to die
 echo "Serving NFS mounts"
-while :; do sleep 30; done
+while :; do
+	sleep 10
+	>/dev/watchdog
+done
 mount -n -o remount,ro /
 poweroff -f
diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh
index a3aa679..5cb0971 100755
--- a/test/TEST-50-MULTINIC/test.sh
+++ b/test/TEST-50-MULTINIC/test.sh
@@ -8,7 +8,6 @@ KVERSION=${KVERSION-$(uname -r)}
 # Uncomment this to debug failures
 #DEBUGFAIL="rd.shell"
 #SERIAL="tcp:127.0.0.1:9999"
-SERIAL="null"
 
 run_server() {
     # Start server first
@@ -19,9 +18,9 @@ run_server() {
         -hda $TESTDIR/server.ext3 \
         -m 512M -smp 2 \
         -display none \
-        -netdev socket,mcast=230.0.0.1:12320,id=net0 \
-        -net nic,macaddr=52:54:01:12:34:56,model=e1000,netdev=net0 \
-        -serial $SERIAL \
+        -net socket,listen=127.0.0.1:12350 \
+        -net nic,macaddr=52:54:01:12:34:56,model=e1000 \
+        ${SERIAL+-serial $SERIAL} \
         -watchdog i6300esb -watchdog-action poweroff \
         -kernel /boot/vmlinuz-$KVERSION \
         -append "loglevel=77 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
@@ -53,15 +52,13 @@ client_test() {
     fi
 
     $testdir/run-qemu -hda $TESTDIR/client.img -m 512M -smp 2 -nographic \
-        -netdev socket,mcast=230.0.0.1:12320,id=net0 \
-        -net nic,netdev=net0,macaddr=52:54:00:12:34:$mac1,model=e1000 \
-        -netdev socket,mcast=230.0.0.1:12320,id=net1 \
-        -net nic,netdev=net1,macaddr=52:54:00:12:34:$mac2,model=e1000 \
-        -netdev socket,mcast=230.0.0.1:12320,id=net2 \
-        -net nic,netdev=net2,macaddr=52:54:00:12:34:$mac3,model=e1000 \
+        -net socket,connect=127.0.0.1:12350 \
+        -net nic,macaddr=52:54:00:12:34:$mac1,model=e1000 \
+        -net nic,macaddr=52:54:00:12:34:$mac2,model=e1000 \
+        -net nic,macaddr=52:54:00:12:34:$mac3,model=e1000 \
         -watchdog i6300esb -watchdog-action poweroff \
         -kernel /boot/vmlinuz-$KVERSION \
-        -append "$cmdline $DEBUGFAIL rd.retry=5 rd.info  ro rd.systemd.log_level=debug console=ttyS0,115200n81 selinux=0 rd.copystate rd.chroot init=/sbin/init" \
+        -append "$cmdline $DEBUGFAIL rd.retry=5 rd.info ro console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
         -initrd $TESTDIR/initramfs.testing
 
     if [[ $? -ne 0 ]] || ! grep -m 1 -q OK $TESTDIR/client.img; then
@@ -252,14 +249,14 @@ test_setup() {
     # Make server's dracut image
     $basedir/dracut.sh -l -i $TESTDIR/overlay / \
         -m "dash udev-rules base rootfs-block debug kernel-modules watchdog" \
-        -d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd e1000 i6300esbwdt" \
+        -d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd e1000 i6300esb ib700wdt" \
         -f $TESTDIR/initramfs.server $KVERSION || return 1
 
     # Make client's dracut image
     $basedir/dracut.sh -l -i $TESTDIR/overlay / \
         -o "plymouth" \
         -a "debug" \
-        -d "af_packet piix sd_mod sr_mod ata_piix ide-gd_mod e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esbwdt" \
+        -d "af_packet piix sd_mod sr_mod ata_piix ide-gd_mod e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
         -f $TESTDIR/initramfs.testing $KVERSION || return 1
 }