Commit 843ca212 authored by Tomasz Kulasek's avatar Tomasz Kulasek Committed by Jim Harris
Browse files

scripts/fio.py: fix sysfs delay



After iSCSI login sysfs is not updated immediately, but when session is
initialized. It can take a while and causes that sometimes scripts
cannot write to sysfs.

Change-Id: Ie4fa512704f022041bb3d9ab02dbb4210ddd04a0
Signed-off-by: default avatarTomasz Kulasek <tomaszx.kulasek@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/454890


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarTomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: default avatarMaciej Szwed <maciej.szwed@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-by: default avatarShuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
parent 74da9043
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -4,6 +4,8 @@ from subprocess import check_call, call, check_output, Popen, PIPE, CalledProces
import re
import sys
import signal
import os.path
import time

fio_template = """
[global]
@@ -135,6 +137,16 @@ def set_device_parameter(devices, filename_template, value):


def configure_devices(devices):

    for dev in devices:
        retry = 30
        while retry > 0:
            if os.path.exists("/sys/block/%s/queue/nomerges" % dev):
                break
            else:
                retry = retry - 1
                time.sleep(0.1)

    set_device_parameter(devices, "/sys/block/%s/queue/nomerges", "2")
    set_device_parameter(devices, "/sys/block/%s/queue/nr_requests", "128")
    requested_qd = 128
+0 −1
Original line number Diff line number Diff line
@@ -14,7 +14,6 @@ function node_login_fio_logout() {
		iscsiadm -m node -p $TARGET_IP:$ISCSI_PORT -o update -n node.conn[0].iscsi.$arg
	done
	iscsiadm -m node --login -p $TARGET_IP:$ISCSI_PORT
	sleep 1
	$fio_py iscsi 512 1 write 2 1
	$fio_py iscsi 512 1 read 2 1
	iscsiadm -m node --logout -p $TARGET_IP:$ISCSI_PORT
+0 −1
Original line number Diff line number Diff line
@@ -95,7 +95,6 @@ iscsiadm -m node --login -p $TARGET_IP:$ISCSI_PORT

trap "iscsicleanup; killprocess $pid; iscsitestfini $1 $2; delete_tmp_files; exit 1" SIGINT SIGTERM EXIT

sleep 1
$fio_py iscsi 4096 1 randrw 1 1 verify
$fio_py iscsi 131072 32 randrw 1 1 verify
$fio_py iscsi 524288 128 randrw 1 1 verify
+0 −1
Original line number Diff line number Diff line
@@ -74,7 +74,6 @@ sleep 1
iscsiadm -m node --login -p $MIGRATION_ADDRESS:$ISCSI_PORT

# fio tests for multi-process
sleep 1
$fio_py iscsi 4096 32 randrw 10 1 &
fiopid=$!
sleep 5
+0 −1
Original line number Diff line number Diff line
@@ -71,7 +71,6 @@ sleep 1
echo "Logging into iSCSI target."
iscsiadm -m discovery -t sendtargets -p $TARGET_IP:$ISCSI_PORT
iscsiadm -m node --login -p $TARGET_IP:$ISCSI_PORT
sleep 1

echo "Running FIO"
$fio_py iscsi 131072 64 randrw 5 1
Loading