From aed8986d73fd5e827f141ce4cf938c140163257d Mon Sep 17 00:00:00 2001 From: Dariusz Stojaczyk Date: Fri, 10 Aug 2018 12:20:25 +0200 Subject: [PATCH] app: drop -w parameter (wait for rpc init) --wait-for-rpc can be used instead. This parameter will eventually become obsolete, so let's remove the short version. It will be exclusively used for "workload" in perf apps. Change-Id: Ib4b7001d0e756349b05788278c894d622bc89790 Signed-off-by: Dariusz Stojaczyk Reviewed-on: https://review.gerrithub.io/421863 Tested-by: SPDK CI Jenkins Chandler-Test-Pool: SPDK Automated Test System Reviewed-by: Jim Harris Reviewed-by: Ben Walker --- lib/event/app.c | 6 +++--- test/iscsi_tgt/calsoft/calsoft.sh | 2 +- test/iscsi_tgt/digests/digests.sh | 2 +- test/iscsi_tgt/ext4test/ext4test.sh | 2 +- test/iscsi_tgt/filesystem/filesystem.sh | 2 +- test/iscsi_tgt/initiator/initiator.sh | 2 +- test/iscsi_tgt/ip_migration/ip_migration.sh | 2 +- test/iscsi_tgt/lvol/iscsi_lvol.sh | 2 +- test/iscsi_tgt/multiconnection/multiconnection.sh | 2 +- test/iscsi_tgt/nvme_remote/fio_remote_nvme.sh | 4 ++-- test/iscsi_tgt/pmem/iscsi_pmem.sh | 2 +- test/iscsi_tgt/rbd/rbd.sh | 2 +- test/iscsi_tgt/reset/reset.sh | 2 +- test/iscsi_tgt/rpc_config/rpc_config.sh | 2 +- test/json_config/common.sh | 4 ++-- test/nvmf/discovery/discovery.sh | 2 +- test/nvmf/filesystem/filesystem.sh | 2 +- test/nvmf/fio/fio.sh | 2 +- test/nvmf/host/aer.sh | 2 +- test/nvmf/host/bdevperf.sh | 2 +- test/nvmf/host/fio.sh | 2 +- test/nvmf/host/identify.sh | 2 +- test/nvmf/host/perf.sh | 2 +- test/nvmf/lvol/nvmf_lvol.sh | 2 +- test/nvmf/multiconnection/multiconnection.sh | 2 +- test/nvmf/nvme_cli/nvme_cli.sh | 2 +- test/nvmf/rpc/rpc.sh | 2 +- test/nvmf/shutdown/shutdown.sh | 2 +- test/vhost/migration/migration-tc2.sh | 2 +- test/vhost/migration/migration-tc3a.sh | 2 +- 30 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lib/event/app.c b/lib/event/app.c index 1f9d9c1e0..543df7790 100644 --- a/lib/event/app.c +++ b/lib/event/app.c @@ -99,8 +99,6 @@ static struct option g_cmdline_options[SPDK_APP_MAX_CMDLINE_OPTIONS + 1] = { {"mem-size", required_argument, NULL, MEM_SIZE_OPT_IDX}, #define NO_PCI_OPT_IDX 'u' {"no-pci", no_argument, NULL, NO_PCI_OPT_IDX}, -#define WAIT_FOR_RPC_OPT_IDX 'w' - {"wait-for-rpc", no_argument, NULL, WAIT_FOR_RPC_OPT_IDX}, #define PCI_BLACKLIST_OPT_IDX 'B' {"pci-blacklist", required_argument, NULL, PCI_BLACKLIST_OPT_IDX}, #define TRACEFLAG_OPT_IDX 'L' @@ -111,6 +109,8 @@ static struct option g_cmdline_options[SPDK_APP_MAX_CMDLINE_OPTIONS + 1] = { {"pci-whitelist", required_argument, NULL, PCI_WHITELIST_OPT_IDX}, #define SILENCE_NOTICELOG_OPT_IDX 257 {"silence-noticelog", no_argument, NULL, SILENCE_NOTICELOG_OPT_IDX}, +#define WAIT_FOR_RPC_OPT_IDX 258 + {"wait-for-rpc", no_argument, NULL, WAIT_FOR_RPC_OPT_IDX}, {NULL, no_argument, NULL, 0} }; @@ -888,7 +888,7 @@ spdk_app_parse_args(int argc, char **argv, struct spdk_app_opts *opts, /* TBD: Replace warning by failure when RPCs for startup are prepared. */ if (opts->config_file && opts->delay_subsystem_init) { fprintf(stderr, - "WARNING: -w and config file are used at the same time. " + "WARNING: --wait-for-rpc and config file are used at the same time. " "- Please be careful one options might overwrite others.\n"); } diff --git a/test/iscsi_tgt/calsoft/calsoft.sh b/test/iscsi_tgt/calsoft/calsoft.sh index 7605aee5b..b83638b06 100755 --- a/test/iscsi_tgt/calsoft/calsoft.sh +++ b/test/iscsi_tgt/calsoft/calsoft.sh @@ -32,7 +32,7 @@ echo "IP=$TARGET_IP" >> /usr/local/etc/its.conf timing_enter start_iscsi_tgt -$ISCSI_APP -m 0x1 -w & +$ISCSI_APP -m 0x1 --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/iscsi_tgt/digests/digests.sh b/test/iscsi_tgt/digests/digests.sh index 76ac8681f..6e7e9817e 100755 --- a/test/iscsi_tgt/digests/digests.sh +++ b/test/iscsi_tgt/digests/digests.sh @@ -63,7 +63,7 @@ fio_py="python $rootdir/scripts/fio.py" timing_enter start_iscsi_tgt -$ISCSI_APP -m $ISCSI_TEST_CORE_MASK -w & +$ISCSI_APP -m $ISCSI_TEST_CORE_MASK --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/iscsi_tgt/ext4test/ext4test.sh b/test/iscsi_tgt/ext4test/ext4test.sh index 8cc533771..9cef3a97b 100755 --- a/test/iscsi_tgt/ext4test/ext4test.sh +++ b/test/iscsi_tgt/ext4test/ext4test.sh @@ -15,7 +15,7 @@ rpc_py="python $rootdir/scripts/rpc.py" timing_enter start_iscsi_tgt -$ISCSI_APP -w & +$ISCSI_APP --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/iscsi_tgt/filesystem/filesystem.sh b/test/iscsi_tgt/filesystem/filesystem.sh index 3c9608198..b1652e72d 100755 --- a/test/iscsi_tgt/filesystem/filesystem.sh +++ b/test/iscsi_tgt/filesystem/filesystem.sh @@ -25,7 +25,7 @@ function remove_backends() { timing_enter start_iscsi_tgt -$ISCSI_APP -m $ISCSI_TEST_CORE_MASK -w & +$ISCSI_APP -m $ISCSI_TEST_CORE_MASK --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/iscsi_tgt/initiator/initiator.sh b/test/iscsi_tgt/initiator/initiator.sh index 8a8f916c4..bcc9ac50e 100755 --- a/test/iscsi_tgt/initiator/initiator.sh +++ b/test/iscsi_tgt/initiator/initiator.sh @@ -16,7 +16,7 @@ timing_enter start_iscsi_tgt # Start the iSCSI target without using stub # Reason: Two SPDK processes will be started -$ISCSI_APP -m 0x2 -p 1 -s 512 -w & +$ISCSI_APP -m 0x2 -p 1 -s 512 --wait-for-rpc & pid=$! echo "iSCSI target launched. pid: $pid" trap "killprocess $pid;exit 1" SIGINT SIGTERM EXIT diff --git a/test/iscsi_tgt/ip_migration/ip_migration.sh b/test/iscsi_tgt/ip_migration/ip_migration.sh index 3dfb69751..fbed7045d 100755 --- a/test/iscsi_tgt/ip_migration/ip_migration.sh +++ b/test/iscsi_tgt/ip_migration/ip_migration.sh @@ -43,7 +43,7 @@ for ((i = 0; i < 2; i++)); do rpc_addr="/var/tmp/spdk${i}.sock" # TODO: run the different iSCSI instances on non-overlapping CPU masks - $ISCSI_APP -r $rpc_addr -s 1000 -i $i -m $ISCSI_TEST_CORE_MASK -w & + $ISCSI_APP -r $rpc_addr -s 1000 -i $i -m $ISCSI_TEST_CORE_MASK --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/iscsi_tgt/lvol/iscsi_lvol.sh b/test/iscsi_tgt/lvol/iscsi_lvol.sh index 3ad91b1a8..45c8f8efd 100755 --- a/test/iscsi_tgt/lvol/iscsi_lvol.sh +++ b/test/iscsi_tgt/lvol/iscsi_lvol.sh @@ -22,7 +22,7 @@ fio_py="python $rootdir/scripts/fio.py" timing_enter start_iscsi_tgt -$ISCSI_APP -m $ISCSI_TEST_CORE_MASK -w & +$ISCSI_APP -m $ISCSI_TEST_CORE_MASK --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/iscsi_tgt/multiconnection/multiconnection.sh b/test/iscsi_tgt/multiconnection/multiconnection.sh index 94aa5329f..5c7f62c59 100755 --- a/test/iscsi_tgt/multiconnection/multiconnection.sh +++ b/test/iscsi_tgt/multiconnection/multiconnection.sh @@ -35,7 +35,7 @@ timing_enter multiconnection timing_enter start_iscsi_tgt # Start the iSCSI target without using stub. -$ISCSI_APP -w & +$ISCSI_APP --wait-for-rpc & iscsipid=$! echo "iSCSI target launched. pid: $iscsipid" trap "remove_backends; iscsicleanup; killprocess $iscsipid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/iscsi_tgt/nvme_remote/fio_remote_nvme.sh b/test/iscsi_tgt/nvme_remote/fio_remote_nvme.sh index 6b7ee8f6f..4ffb701e8 100755 --- a/test/iscsi_tgt/nvme_remote/fio_remote_nvme.sh +++ b/test/iscsi_tgt/nvme_remote/fio_remote_nvme.sh @@ -31,7 +31,7 @@ function run_nvme_remote() { # Start the iSCSI target without using stub iscsi_rpc_addr="/var/tmp/spdk-iscsi.sock" ISCSI_APP="$rootdir/app/iscsi_tgt/iscsi_tgt" - $ISCSI_APP -r "$iscsi_rpc_addr" -m 0x1 -p 0 -s 512 -w & + $ISCSI_APP -r "$iscsi_rpc_addr" -m 0x1 -p 0 -s 512 --wait-for-rpc & iscsipid=$! echo "iSCSI target launched. pid: $iscsipid" trap "killprocess $iscsipid; killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT @@ -64,7 +64,7 @@ timing_enter nvme_remote # Start the NVMf target NVMF_APP="$rootdir/app/nvmf_tgt/nvmf_tgt" -$NVMF_APP -m 0x2 -p 1 -s 512 -w & +$NVMF_APP -m 0x2 -p 1 -s 512 --wait-for-rpc & nvmfpid=$! echo "NVMf target launched. pid: $nvmfpid" trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/iscsi_tgt/pmem/iscsi_pmem.sh b/test/iscsi_tgt/pmem/iscsi_pmem.sh index 3948db934..2e8f5b5b4 100755 --- a/test/iscsi_tgt/pmem/iscsi_pmem.sh +++ b/test/iscsi_tgt/pmem/iscsi_pmem.sh @@ -18,7 +18,7 @@ fio_py="python $rootdir/scripts/fio.py" timing_enter iscsi_pmem timing_enter start_iscsi_target -$ISCSI_APP -m $ISCSI_TEST_CORE_MASK -w & +$ISCSI_APP -m $ISCSI_TEST_CORE_MASK --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/iscsi_tgt/rbd/rbd.sh b/test/iscsi_tgt/rbd/rbd.sh index 0fee73bd9..3ea1c58af 100755 --- a/test/iscsi_tgt/rbd/rbd.sh +++ b/test/iscsi_tgt/rbd/rbd.sh @@ -22,7 +22,7 @@ fio_py="python $rootdir/scripts/fio.py" timing_enter start_iscsi_tgt -$ISCSI_APP -m $ISCSI_TEST_CORE_MASK -w & +$ISCSI_APP -m $ISCSI_TEST_CORE_MASK --wait-for-rpc & pid=$! trap "killprocess $pid; rbd_cleanup; exit 1" SIGINT SIGTERM EXIT diff --git a/test/iscsi_tgt/reset/reset.sh b/test/iscsi_tgt/reset/reset.sh index 0272049bb..304cc0cbe 100755 --- a/test/iscsi_tgt/reset/reset.sh +++ b/test/iscsi_tgt/reset/reset.sh @@ -21,7 +21,7 @@ fi timing_enter start_iscsi_tgt -$ISCSI_APP -w & +$ISCSI_APP --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/iscsi_tgt/rpc_config/rpc_config.sh b/test/iscsi_tgt/rpc_config/rpc_config.sh index d73c22509..a47e10578 100755 --- a/test/iscsi_tgt/rpc_config/rpc_config.sh +++ b/test/iscsi_tgt/rpc_config/rpc_config.sh @@ -22,7 +22,7 @@ rpc_config_py="python $testdir/rpc_config.py" timing_enter start_iscsi_tgt -$ISCSI_APP -w & +$ISCSI_APP --wait-for-rpc & pid=$! echo "Process pid: $pid" diff --git a/test/json_config/common.sh b/test/json_config/common.sh index 55ec252eb..03ca769c9 100644 --- a/test/json_config/common.sh +++ b/test/json_config/common.sh @@ -17,7 +17,7 @@ null_json_config=$JSON_DIR/null_json_config.json function run_spdk_tgt() { echo "Running spdk target" - $SPDK_BUILD_DIR/app/spdk_tgt/spdk_tgt -m 0x1 -p 0 -s 1024 -w & + $SPDK_BUILD_DIR/app/spdk_tgt/spdk_tgt -m 0x1 -p 0 -s 1024 --wait-for-rpc & spdk_tgt_pid=$! echo "Waiting for app to run..." @@ -36,7 +36,7 @@ function load_nvme() { } function run_initiator() { - $SPDK_BUILD_DIR/app/spdk_tgt/spdk_tgt -m 0x2 -p 0 -g -u -s 1024 -r /var/tmp/virtio.sock -w & + $SPDK_BUILD_DIR/app/spdk_tgt/spdk_tgt -m 0x2 -p 0 -g -u -s 1024 -r /var/tmp/virtio.sock --wait-for-rpc & virtio_pid=$! waitforlisten $virtio_pid /var/tmp/virtio.sock } diff --git a/test/nvmf/discovery/discovery.sh b/test/nvmf/discovery/discovery.sh index 45a417f13..7d980c829 100755 --- a/test/nvmf/discovery/discovery.sh +++ b/test/nvmf/discovery/discovery.sh @@ -27,7 +27,7 @@ fi timing_enter discovery timing_enter start_nvmf_tgt # Start up the NVMf target in another process -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/filesystem/filesystem.sh b/test/nvmf/filesystem/filesystem.sh index f5158cd7e..e3104cf27 100755 --- a/test/nvmf/filesystem/filesystem.sh +++ b/test/nvmf/filesystem/filesystem.sh @@ -23,7 +23,7 @@ timing_enter fs_test for incapsule in 0 4096; do # Start up the NVMf target in another process - $NVMF_APP -m 0xF -w & + $NVMF_APP -m 0xF --wait-for-rpc & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/fio/fio.sh b/test/nvmf/fio/fio.sh index a35332df4..3accbd668 100755 --- a/test/nvmf/fio/fio.sh +++ b/test/nvmf/fio/fio.sh @@ -22,7 +22,7 @@ fi timing_enter fio timing_enter start_nvmf_tgt # Start up the NVMf target in another process -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/host/aer.sh b/test/nvmf/host/aer.sh index 6ef2d79b4..8798dfa27 100755 --- a/test/nvmf/host/aer.sh +++ b/test/nvmf/host/aer.sh @@ -19,7 +19,7 @@ fi timing_enter aer timing_enter start_nvmf_tgt -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/host/bdevperf.sh b/test/nvmf/host/bdevperf.sh index 972ab31f4..f42bccef0 100755 --- a/test/nvmf/host/bdevperf.sh +++ b/test/nvmf/host/bdevperf.sh @@ -22,7 +22,7 @@ fi timing_enter bdevperf timing_enter start_nvmf_tgt -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/host/fio.sh b/test/nvmf/host/fio.sh index 601abfbf0..491767445 100755 --- a/test/nvmf/host/fio.sh +++ b/test/nvmf/host/fio.sh @@ -25,7 +25,7 @@ fi timing_enter fio timing_enter start_nvmf_tgt -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/host/identify.sh b/test/nvmf/host/identify.sh index 7ac10d96e..d552f8687 100755 --- a/test/nvmf/host/identify.sh +++ b/test/nvmf/host/identify.sh @@ -21,7 +21,7 @@ fi timing_enter identify timing_enter start_nvmf_tgt -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/host/perf.sh b/test/nvmf/host/perf.sh index 59b707270..4c969f29a 100755 --- a/test/nvmf/host/perf.sh +++ b/test/nvmf/host/perf.sh @@ -22,7 +22,7 @@ fi timing_enter perf timing_enter start_nvmf_tgt -$NVMF_APP -m 0xF -w -i 0 & +$NVMF_APP -m 0xF --wait-for-rpc -i 0 & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/lvol/nvmf_lvol.sh b/test/nvmf/lvol/nvmf_lvol.sh index ced9145bd..e505d2d47 100755 --- a/test/nvmf/lvol/nvmf_lvol.sh +++ b/test/nvmf/lvol/nvmf_lvol.sh @@ -40,7 +40,7 @@ fi timing_enter lvol_integrity timing_enter start_nvmf_tgt # Start up the NVMf target in another process -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & pid=$! trap "disconnect_nvmf; killprocess $pid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/multiconnection/multiconnection.sh b/test/nvmf/multiconnection/multiconnection.sh index afd49fbab..0754ab01b 100755 --- a/test/nvmf/multiconnection/multiconnection.sh +++ b/test/nvmf/multiconnection/multiconnection.sh @@ -31,7 +31,7 @@ fi timing_enter multiconnection timing_enter start_nvmf_tgt # Start up the NVMf target in another process -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & pid=$! trap "killprocess $pid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/nvme_cli/nvme_cli.sh b/test/nvmf/nvme_cli/nvme_cli.sh index 2d05d1aa8..19ac86989 100755 --- a/test/nvmf/nvme_cli/nvme_cli.sh +++ b/test/nvmf/nvme_cli/nvme_cli.sh @@ -28,7 +28,7 @@ fi timing_enter nvme_cli timing_enter start_nvmf_tgt -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & nvmfpid=$! trap "killprocess $nvmfpid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/rpc/rpc.sh b/test/nvmf/rpc/rpc.sh index f4841a468..190361201 100755 --- a/test/nvmf/rpc/rpc.sh +++ b/test/nvmf/rpc/rpc.sh @@ -19,7 +19,7 @@ fi timing_enter rpc timing_enter start_nvmf_tgt # Start up the NVMf target in another process -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & pid=$! trap "killprocess $pid; exit 1" SIGINT SIGTERM EXIT diff --git a/test/nvmf/shutdown/shutdown.sh b/test/nvmf/shutdown/shutdown.sh index 1e0411414..a2a3e819f 100755 --- a/test/nvmf/shutdown/shutdown.sh +++ b/test/nvmf/shutdown/shutdown.sh @@ -22,7 +22,7 @@ fi timing_enter shutdown timing_enter start_nvmf_tgt # Start up the NVMf target in another process -$NVMF_APP -m 0xF -w & +$NVMF_APP -m 0xF --wait-for-rpc & pid=$! trap "killprocess $pid; nvmfcleanup; exit 1" SIGINT SIGTERM EXIT diff --git a/test/vhost/migration/migration-tc2.sh b/test/vhost/migration/migration-tc2.sh index cdf2df175..c1c9c6428 100644 --- a/test/vhost/migration/migration-tc2.sh +++ b/test/vhost/migration/migration-tc2.sh @@ -93,7 +93,7 @@ function migration_tc2_configure_vhost() notice "Running nvmf_tgt..." mkdir -p $nvmf_dir rm -f $nvmf_dir/* - $SPDK_BUILD_DIR/app/nvmf_tgt/nvmf_tgt -s 512 -m 0x4 -r $nvmf_dir/rpc.sock -w & + $SPDK_BUILD_DIR/app/nvmf_tgt/nvmf_tgt -s 512 -m 0x4 -r $nvmf_dir/rpc.sock --wait-for-rpc & local nvmf_tgt_pid=$! echo $nvmf_tgt_pid > $nvmf_dir/nvmf_tgt.pid waitforlisten "$nvmf_tgt_pid" "$nvmf_dir/rpc.sock" diff --git a/test/vhost/migration/migration-tc3a.sh b/test/vhost/migration/migration-tc3a.sh index 18f36dc70..5ecfa3fd4 100644 --- a/test/vhost/migration/migration-tc3a.sh +++ b/test/vhost/migration/migration-tc3a.sh @@ -101,7 +101,7 @@ function host1_start_nvmf() rm -rf $nvmf_dir/* trap 'host1_cleanup_nvmf SIGKILL; error_exit "${FUNCNAME}" "${LINENO}"' INT ERR EXIT - $SPDK_BUILD_DIR/app/nvmf_tgt/nvmf_tgt -s 512 -m 0xF -r $nvmf_dir/nvmf_rpc.sock -w & + $SPDK_BUILD_DIR/app/nvmf_tgt/nvmf_tgt -s 512 -m 0xF -r $nvmf_dir/nvmf_rpc.sock --wait-for-rpc & nvmf_tgt_pid=$! echo $nvmf_tgt_pid > $nvmf_dir/nvmf_tgt.pid waitforlisten "$nvmf_tgt_pid" "$nvmf_dir/nvmf_rpc.sock"