Blame 0070-TEST-30-ISCSI-switch-to-scsi-target-utils.patch

Harald Hoyer bb31e7
From c22c43f81a5f15c8759e6aa69773d0e9010c4741 Mon Sep 17 00:00:00 2001
Harald Hoyer bb31e7
From: Harald Hoyer <harald@redhat.com>
Harald Hoyer bb31e7
Date: Wed, 12 Aug 2015 14:42:03 +0200
Harald Hoyer bb31e7
Subject: [PATCH] TEST-30-ISCSI: switch to scsi-target-utils
Harald Hoyer bb31e7
Harald Hoyer bb31e7
netbsd-iscsi is not available on RHEL
Harald Hoyer bb31e7
Harald Hoyer bb31e7
Beef up the testsuite to use the two targets over different
Harald Hoyer bb31e7
interfaces.
Harald Hoyer bb31e7
Harald Hoyer bb31e7
Test the new iSCSI parameters rd.iscsi.waitnet and rd.iscsi.testroute.
Harald Hoyer bb31e7
---
Harald Hoyer bb31e7
 README.testsuite                  |  2 +-
Harald Hoyer bb31e7
 test/TEST-30-ISCSI/server-init.sh | 17 ++++++++++-
Harald Hoyer bb31e7
 test/TEST-30-ISCSI/targets        | 25 ----------------
Harald Hoyer bb31e7
 test/TEST-30-ISCSI/test.sh        | 62 ++++++++++++++++++++++++++-------------
Harald Hoyer bb31e7
 4 files changed, 59 insertions(+), 47 deletions(-)
Harald Hoyer bb31e7
 delete mode 100644 test/TEST-30-ISCSI/targets
Harald Hoyer bb31e7
Harald Hoyer bb31e7
diff --git a/README.testsuite b/README.testsuite
Harald Hoyer bb31e7
index b539d90..f9f60d4 100644
Harald Hoyer bb31e7
--- a/README.testsuite
Harald Hoyer bb31e7
+++ b/README.testsuite
Harald Hoyer bb31e7
@@ -6,9 +6,9 @@ mdadm \
Harald Hoyer bb31e7
 lvm2 \
Harald Hoyer bb31e7
 cryptsetup \
Harald Hoyer bb31e7
 nfs-utils \
Harald Hoyer bb31e7
-netbsd-iscsi \
Harald Hoyer bb31e7
 nbd \
Harald Hoyer bb31e7
 dhcp-server \
Harald Hoyer bb31e7
+scsi-target-utils \
Harald Hoyer bb31e7
 iscsi-initiator-utils
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
diff --git a/test/TEST-30-ISCSI/server-init.sh b/test/TEST-30-ISCSI/server-init.sh
Harald Hoyer bb31e7
index 0407b17..64a4755 100755
Harald Hoyer bb31e7
--- a/test/TEST-30-ISCSI/server-init.sh
Harald Hoyer bb31e7
+++ b/test/TEST-30-ISCSI/server-init.sh
Harald Hoyer bb31e7
@@ -12,10 +12,25 @@ ip link set lo up
Harald Hoyer bb31e7
 ip link set dev eth0 name ens3
Harald Hoyer bb31e7
 ip addr add 192.168.50.1/24 dev ens3
Harald Hoyer bb31e7
 ip link set ens3 up
Harald Hoyer bb31e7
+ip link set dev eth1 name ens4
Harald Hoyer bb31e7
+ip addr add 192.168.51.1/24 dev ens4
Harald Hoyer bb31e7
+ip link set ens4 up
Harald Hoyer bb31e7
 >/var/lib/dhcpd/dhcpd.leases
Harald Hoyer bb31e7
 chmod 777 /var/lib/dhcpd/dhcpd.leases
Harald Hoyer bb31e7
 dhcpd -d -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases &
Harald Hoyer bb31e7
-/usr/sbin/iscsi-target -D -t iqn.2009-06.dracut &
Harald Hoyer bb31e7
+
Harald Hoyer bb31e7
+tgtd
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode target --op new --tid 1 --targetname iqn.2009-06.dracut:target0
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode target --op new --tid 2 --targetname iqn.2009-06.dracut:target1
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode target --op new --tid 3 --targetname iqn.2009-06.dracut:target2
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 1 -b /dev/sdb
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode logicalunit --op new --tid 2 --lun 2 -b /dev/sdc
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode logicalunit --op new --tid 3 --lun 3 -b /dev/sdd
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode target --op bind --tid 1 -I 192.168.50.101
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode target --op bind --tid 2 -I 192.168.51.101
Harald Hoyer bb31e7
+tgtadm --lld iscsi --mode target --op bind --tid 3 -I 192.168.50.101
Harald Hoyer bb31e7
+
Harald Hoyer bb31e7
+
Harald Hoyer bb31e7
 # Wait forever for the VM to die
Harald Hoyer bb31e7
 echo "Serving iSCSI"
Harald Hoyer bb31e7
 while :; do
Harald Hoyer bb31e7
diff --git a/test/TEST-30-ISCSI/targets b/test/TEST-30-ISCSI/targets
Harald Hoyer bb31e7
deleted file mode 100644
Harald Hoyer bb31e7
index 6a6872e..0000000
Harald Hoyer bb31e7
--- a/test/TEST-30-ISCSI/targets
Harald Hoyer bb31e7
+++ /dev/null
Harald Hoyer bb31e7
@@ -1,25 +0,0 @@
Harald Hoyer bb31e7
-# $NetBSD: targets,v 1.2 2006/03/04 21:53:16 agc Exp $
Harald Hoyer bb31e7
-#
Harald Hoyer bb31e7
-# Structure of this file:
Harald Hoyer bb31e7
-#
Harald Hoyer bb31e7
-# + an extent is a straight (offset, length) pair of a file or device
Harald Hoyer bb31e7
-#   it's the lowest common storage denominator
Harald Hoyer bb31e7
-#   at least one is needed
Harald Hoyer bb31e7
-# + a device is made up of one or more extents or other devices
Harald Hoyer bb31e7
-#   devices can be added in a hierachical manner, to enhance resilience
Harald Hoyer bb31e7
-# + in this example, no device definitions are necessary, as the target
Harald Hoyer bb31e7
-#   will just use a simple extent for persistent storage
Harald Hoyer bb31e7
-# + a target is made up of 1 or more devices
Harald Hoyer bb31e7
-# The code does not support RAID1 recovery at present
Harald Hoyer bb31e7
-
Harald Hoyer bb31e7
-# Simple file showing 1 extent, mapped straight into 1 target
Harald Hoyer bb31e7
-
Harald Hoyer bb31e7
-# extents	file			start	length
Harald Hoyer bb31e7
-extent0		/dev/sdb	0	20971520
Harald Hoyer bb31e7
-extent1		/dev/sdc	0	20971520
Harald Hoyer bb31e7
-extent2		/dev/sdd	0	20971520
Harald Hoyer bb31e7
-
Harald Hoyer bb31e7
-# target	flags	storage		netmask
Harald Hoyer bb31e7
-target0		rw	extent0		192.168.50.0/24
Harald Hoyer bb31e7
-target1		rw	extent1		192.168.50.0/24
Harald Hoyer bb31e7
-target2		rw	extent2		192.168.50.0/24
Harald Hoyer bb31e7
diff --git a/test/TEST-30-ISCSI/test.sh b/test/TEST-30-ISCSI/test.sh
Harald Hoyer bb31e7
index 59e9c5b..cc6ec4e 100755
Harald Hoyer bb31e7
--- a/test/TEST-30-ISCSI/test.sh
Harald Hoyer bb31e7
+++ b/test/TEST-30-ISCSI/test.sh
Harald Hoyer bb31e7
@@ -3,8 +3,10 @@ TEST_DESCRIPTION="root filesystem over iSCSI"
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
 KVERSION=${KVERSION-$(uname -r)}
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
-#DEBUGFAIL="rd.shell"
Harald Hoyer bb31e7
-#SERIAL="tcp:127.0.0.1:9999"
Harald Hoyer bb31e7
+#DEBUGFAIL="rd.shell rd.break rd.debug loglevel=7 "
Harald Hoyer bb31e7
+DEBUGFAIL="loglevel=1"
Harald Hoyer bb31e7
+#SERVER_DEBUG="rd.debug loglevel=7"
Harald Hoyer bb31e7
+SERIAL="tcp:127.0.0.1:9999"
Harald Hoyer bb31e7
 SERIAL="null"
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
 run_server() {
Harald Hoyer bb31e7
@@ -16,12 +18,13 @@ run_server() {
Harald Hoyer bb31e7
         -drive format=raw,index=1,media=disk,file=$TESTDIR/root.ext3 \
Harald Hoyer bb31e7
         -drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
Harald Hoyer bb31e7
         -drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
Harald Hoyer bb31e7
-        -m 256M  -smp 2 \
Harald Hoyer bb31e7
+        -m 512M  -smp 2 \
Harald Hoyer bb31e7
         -display none \
Harald Hoyer bb31e7
         -serial $SERIAL \
Harald Hoyer bb31e7
         -net nic,macaddr=52:54:00:12:34:56,model=e1000 \
Harald Hoyer bb31e7
+        -net nic,macaddr=52:54:00:12:34:57,model=e1000 \
Harald Hoyer bb31e7
         -net socket,listen=127.0.0.1:12330 \
Harald Hoyer bb31e7
-        -append "root=/dev/sda rootfstype=ext3 rw rd.debug loglevel=77 console=ttyS0,115200n81 selinux=0" \
Harald Hoyer bb31e7
+        -append "root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
Harald Hoyer bb31e7
         -initrd $TESTDIR/initramfs.server \
Harald Hoyer bb31e7
         -pidfile $TESTDIR/server.pid -daemonize || return 1
Harald Hoyer bb31e7
     sudo chmod 644 $TESTDIR/server.pid || return 1
Harald Hoyer bb31e7
@@ -41,10 +44,11 @@ run_client() {
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
     $testdir/run-qemu \
Harald Hoyer bb31e7
         -drive format=raw,index=0,media=disk,file=$TESTDIR/client.img \
Harald Hoyer bb31e7
-        -m 256M -smp 2 -nographic \
Harald Hoyer bb31e7
+        -m 512M -smp 2 -nographic \
Harald Hoyer bb31e7
         -net nic,macaddr=52:54:00:12:34:00,model=e1000 \
Harald Hoyer bb31e7
+        -net nic,macaddr=52:54:00:12:34:01,model=e1000 \
Harald Hoyer bb31e7
         -net socket,connect=127.0.0.1:12330 \
Harald Hoyer bb31e7
-        -append "$* rw quiet rd.auto rd.retry=5 rd.debug rd.info  console=ttyS0,115200n81 selinux=0 $DEBUGFAIL" \
Harald Hoyer bb31e7
+        -append "$* rw rd.auto rd.retry=20 console=ttyS0,115200n81 selinux=0 rd.debug=0 $DEBUGFAIL" \
Harald Hoyer bb31e7
         -initrd $TESTDIR/initramfs.testing
Harald Hoyer bb31e7
     if ! grep -F -m 1 -q iscsi-OK $TESTDIR/client.img; then
Harald Hoyer bb31e7
 	echo "CLIENT TEST END: $test_name [FAILED - BAD EXIT]"
Harald Hoyer bb31e7
@@ -56,20 +60,39 @@ run_client() {
Harald Hoyer bb31e7
 }
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
 do_test_run() {
Harald Hoyer bb31e7
+    run_client "root=dhcp" \
Harald Hoyer bb31e7
+        "root=/dev/root netroot=dhcp ip=ens3:dhcp" \
Harald Hoyer bb31e7
+        || return 1
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
-#
Harald Hoyer bb31e7
-#    run_client "root=dhcp" \
Harald Hoyer bb31e7
-#        "root=dhcp" \
Harald Hoyer bb31e7
-#	|| return 1
Harald Hoyer bb31e7
+    run_client "netroot=iscsi target0"\
Harald Hoyer bb31e7
+        "root=LABEL=singleroot netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0" \
Harald Hoyer bb31e7
+        "ip=192.168.50.101::192.168.50.1:255.255.255.0:iscsi-1:ens3:off" \
Harald Hoyer bb31e7
+        || return 1
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
-    run_client "netroot=iscsi  target0"\
Harald Hoyer bb31e7
-	"root=LABEL=singleroot netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0" \
Harald Hoyer bb31e7
-	"ip=192.168.50.101::192.168.50.1:255.255.255.0:iscsi-1:ens3:off" \
Harald Hoyer bb31e7
+    run_client "netroot=iscsi target1 target2" \
Harald Hoyer bb31e7
+                "root=LABEL=sysroot" \
Harald Hoyer bb31e7
+                "ip=192.168.50.101:::255.255.255.0::ens3:off" \
Harald Hoyer bb31e7
+                "ip=192.168.51.101:::255.255.255.0::ens4:off" \
Harald Hoyer bb31e7
+                "netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
Harald Hoyer bb31e7
+                "netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
Harald Hoyer bb31e7
+         || return 1
Harald Hoyer bb31e7
+
Harald Hoyer bb31e7
+    run_client "netroot=iscsi target1 target2 rd.iscsi.waitnet=0" \
Harald Hoyer bb31e7
+	       "root=LABEL=sysroot" \
Harald Hoyer bb31e7
+               "ip=192.168.50.101:::255.255.255.0::ens3:off" \
Harald Hoyer bb31e7
+               "ip=192.168.51.101:::255.255.255.0::ens4:off" \
Harald Hoyer bb31e7
+	       "netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
Harald Hoyer bb31e7
+               "netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
Harald Hoyer bb31e7
+               "rd.waitnet=0" \
Harald Hoyer bb31e7
 	|| return 1
Harald Hoyer bb31e7
 
Harald Hoyer bb31e7
-    run_client "netroot=iscsi target1 target2" \
Harald Hoyer bb31e7
-	"root=LABEL=sysroot ip=192.168.50.101::192.168.50.1:255.255.255.0:iscsi-1:ens3:off" \
Harald Hoyer bb31e7
-	"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target1 netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
Harald Hoyer bb31e7
+    run_client "netroot=iscsi target1 target2 rd.iscsi.waitnet=0 rd.iscsi.testroute=0" \
Harald Hoyer bb31e7
+	       "root=LABEL=sysroot" \
Harald Hoyer bb31e7
+               "ip=192.168.50.101:::255.255.255.0::ens3:off" \
Harald Hoyer bb31e7
+               "ip=192.168.51.101:::255.255.255.0::ens4:off" \
Harald Hoyer bb31e7
+	       "netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
Harald Hoyer bb31e7
+               "netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
Harald Hoyer bb31e7
+               "rd.waitnet=0 rd.iscsi.testroute=0" \
Harald Hoyer bb31e7
 	|| return 1
Harald Hoyer bb31e7
     return 0
Harald Hoyer bb31e7
 }
Harald Hoyer bb31e7
@@ -170,7 +193,7 @@ test_setup() {
Harald Hoyer bb31e7
         inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
Harald Hoyer bb31e7
     )
Harald Hoyer bb31e7
     sudo $basedir/dracut.sh -l -i $TESTDIR/overlay / \
Harald Hoyer bb31e7
-        -o "dash plymouth dmraid" \
Harald Hoyer bb31e7
+        -o "dash plymouth dmraid nfs" \
Harald Hoyer bb31e7
         -a "debug" \
Harald Hoyer bb31e7
         -d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod" \
Harald Hoyer bb31e7
         --no-hostonly-cmdline -N \
Harald Hoyer bb31e7
@@ -195,13 +218,12 @@ test_setup() {
Harald Hoyer bb31e7
             dmesg mkdir cp ping \
Harald Hoyer bb31e7
             modprobe tcpdump setsid \
Harald Hoyer bb31e7
             /etc/services sleep mount chmod
Harald Hoyer bb31e7
-        inst_multiple /usr/sbin/iscsi-target
Harald Hoyer bb31e7
+        inst_multiple tgtd tgtadm
Harald Hoyer bb31e7
         for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
Harald Hoyer bb31e7
             [ -f ${_terminfodir}/l/linux ] && break
Harald Hoyer bb31e7
         done
Harald Hoyer bb31e7
         inst_multiple -o ${_terminfodir}/l/linux
Harald Hoyer bb31e7
         instmods iscsi_tcp crc32c ipv6
Harald Hoyer bb31e7
-        inst ./targets /etc/iscsi/targets
Harald Hoyer bb31e7
         [ -f /etc/netconfig ] && inst_multiple /etc/netconfig
Harald Hoyer bb31e7
         type -P dhcpd >/dev/null && inst_multiple dhcpd
Harald Hoyer bb31e7
         [ -x /usr/sbin/dhcpd3 ] && inst /usr/sbin/dhcpd3 /usr/sbin/dhcpd
Harald Hoyer bb31e7
@@ -223,7 +245,7 @@ test_setup() {
Harald Hoyer bb31e7
     # Make server's dracut image
Harald Hoyer bb31e7
     $basedir/dracut.sh -l -i $TESTDIR/overlay / \
Harald Hoyer bb31e7
         -a "dash udev-rules base rootfs-block fs-lib debug kernel-modules" \
Harald Hoyer bb31e7
-        -d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod e1000" \
Harald Hoyer bb31e7
+        -d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod e1000 drbg" \
Harald Hoyer bb31e7
         --no-hostonly-cmdline -N \
Harald Hoyer bb31e7
         -f $TESTDIR/initramfs.server $KVERSION || return 1
Harald Hoyer bb31e7