RPC: rename start_subsystem_init to framework_start_init
Signed-off-by: Maciej Wawryk <maciejx.wawryk@intel.com> Change-Id: I44a96f87f5565b3984f0a6919bf7f276207637a3 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/468130 Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
This commit is contained in:
parent
68ee93aac7
commit
e85d47123c
@ -76,12 +76,12 @@ SPDK applications progress through a set of states beginning with `STARTUP` and
|
||||
ending with `RUNTIME`.
|
||||
|
||||
If the `--wait-for-rpc` parameter is provided SPDK will pause just before starting
|
||||
subsystem initialization. This state is called `STARTUP`. The JSON RPC server is
|
||||
ready but only a small subsystem of commands are available to set up initialization
|
||||
framework initialization. This state is called `STARTUP`. The JSON RPC server is
|
||||
ready but only a small subset of commands are available to set up initialization
|
||||
parameters. Those parameters can't be changed after the SPDK application enters
|
||||
`RUNTIME` state. When the client finishes configuring the SPDK subsystems it
|
||||
needs to issue the @ref rpc_start_subsystem_init RPC command to begin the
|
||||
initialization process. After `rpc_start_subsystem_init` returns `true` SPDK
|
||||
needs to issue the @ref rpc_framework_start_init RPC command to begin the
|
||||
initialization process. After `rpc_framework_start_init` returns `true` SPDK
|
||||
will enter the `RUNTIME` state and the list of available commands becomes much
|
||||
larger.
|
||||
|
||||
|
@ -29,7 +29,7 @@ for any kind of error.
|
||||
|
||||
Code | Description
|
||||
------ | -----------
|
||||
-1 | Invalid state - given method exists but it is not callable in [current runtime state](@ref rpc_start_subsystem_init)
|
||||
-1 | Invalid state - given method exists but it is not callable in [current runtime state](@ref rpc_framework_start_init)
|
||||
-32600 | Invalid request - not compliant with JSON-RPC 2.0 Specification
|
||||
-32601 | Method not found
|
||||
-32602 | @ref jsonrpc_invalid_params
|
||||
@ -134,7 +134,7 @@ Example response:
|
||||
}
|
||||
~~~
|
||||
|
||||
## start_subsystem_init {#rpc_start_subsystem_init}
|
||||
## framework_start_init {#rpc_framework_start_init}
|
||||
|
||||
Start initialization of SPDK subsystems when it is deferred by starting SPDK application with option -w.
|
||||
During its deferral some RPCs can be used to set global parameters for SPDK subsystems.
|
||||
@ -156,7 +156,7 @@ Example request:
|
||||
{
|
||||
"jsonrpc": "2.0",
|
||||
"id": 1,
|
||||
"method": "start_subsystem_init"
|
||||
"method": "framework_start_init"
|
||||
}
|
||||
~~~
|
||||
|
||||
@ -238,7 +238,7 @@ Example response:
|
||||
"jsonrpc": "2.0",
|
||||
"id": 1,
|
||||
"result": [
|
||||
"start_subsystem_init",
|
||||
"framework_start_init",
|
||||
"rpc_get_methods",
|
||||
"get_scsi_devices",
|
||||
"net_get_interfaces",
|
||||
|
@ -1056,7 +1056,7 @@ spdk_app_usage(void)
|
||||
}
|
||||
|
||||
static void
|
||||
spdk_rpc_start_subsystem_init_cpl(int rc, void *arg1)
|
||||
spdk_rpc_framework_start_init_cpl(int rc, void *arg1)
|
||||
{
|
||||
struct spdk_jsonrpc_request *request = arg1;
|
||||
struct spdk_json_write_ctx *w;
|
||||
@ -1065,7 +1065,7 @@ spdk_rpc_start_subsystem_init_cpl(int rc, void *arg1)
|
||||
|
||||
if (rc) {
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INTERNAL_ERROR,
|
||||
"subsystem_initialization failed");
|
||||
"framework_initialization failed");
|
||||
return;
|
||||
}
|
||||
|
||||
@ -1078,18 +1078,19 @@ spdk_rpc_start_subsystem_init_cpl(int rc, void *arg1)
|
||||
}
|
||||
|
||||
static void
|
||||
spdk_rpc_start_subsystem_init(struct spdk_jsonrpc_request *request,
|
||||
spdk_rpc_framework_start_init(struct spdk_jsonrpc_request *request,
|
||||
const struct spdk_json_val *params)
|
||||
{
|
||||
if (params != NULL) {
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS,
|
||||
"start_subsystem_init requires no parameters");
|
||||
"framework_start_init requires no parameters");
|
||||
return;
|
||||
}
|
||||
|
||||
spdk_subsystem_init(spdk_rpc_start_subsystem_init_cpl, request);
|
||||
spdk_subsystem_init(spdk_rpc_framework_start_init_cpl, request);
|
||||
}
|
||||
SPDK_RPC_REGISTER("start_subsystem_init", spdk_rpc_start_subsystem_init, SPDK_RPC_STARTUP)
|
||||
SPDK_RPC_REGISTER("framework_start_init", spdk_rpc_framework_start_init, SPDK_RPC_STARTUP)
|
||||
SPDK_RPC_REGISTER_ALIAS_DEPRECATED(framework_start_init, start_subsystem_init)
|
||||
|
||||
struct subsystem_init_poller_ctx {
|
||||
struct spdk_poller *init_poller;
|
||||
|
@ -401,7 +401,7 @@ subsystem_init_done(int rc, void *arg1)
|
||||
|
||||
spdk_rpc_set_state(SPDK_RPC_RUNTIME);
|
||||
/* Another round. This time for RUNTIME methods */
|
||||
SPDK_DEBUG_APP_CFG("'start_subsystem_init' done - continuing configuration\n");
|
||||
SPDK_DEBUG_APP_CFG("'framework_start_init' done - continuing configuration\n");
|
||||
|
||||
assert(ctx != NULL);
|
||||
if (ctx->subsystems) {
|
||||
@ -424,7 +424,7 @@ static struct spdk_json_object_decoder subsystem_decoders[] = {
|
||||
* There are two iterations:
|
||||
*
|
||||
* In first iteration only STARTUP RPC methods are used, other methods are ignored. When
|
||||
* allsubsystems are walked the ctx->subsystems_it became NULL and "start_subsystem_init"
|
||||
* allsubsystems are walked the ctx->subsystems_it became NULL and "framework_start_init"
|
||||
* is called to let the SPDK move to RUNTIME state (initialize all subsystems) and
|
||||
* second iteration begins.
|
||||
*
|
||||
@ -440,7 +440,7 @@ spdk_app_json_config_load_subsystem(void *_ctx)
|
||||
|
||||
if (ctx->subsystems_it == NULL) {
|
||||
if (spdk_rpc_get_state() == SPDK_RPC_STARTUP) {
|
||||
SPDK_DEBUG_APP_CFG("No more entries for current state, calling 'start_subsystem_init'\n");
|
||||
SPDK_DEBUG_APP_CFG("No more entries for current state, calling 'framework_start_init'\n");
|
||||
spdk_subsystem_init(subsystem_init_done, ctx);
|
||||
} else {
|
||||
spdk_app_json_config_load_done(ctx, 0);
|
||||
|
@ -39,11 +39,12 @@ if __name__ == "__main__":
|
||||
parser.set_defaults(dry_run=False)
|
||||
subparsers = parser.add_subparsers(help='RPC methods', dest='called_rpc_name')
|
||||
|
||||
def start_subsystem_init(args):
|
||||
rpc.start_subsystem_init(args.client)
|
||||
def framework_start_init(args):
|
||||
rpc.framework_start_init(args.client)
|
||||
|
||||
p = subparsers.add_parser('start_subsystem_init', help='Start initialization of subsystems')
|
||||
p.set_defaults(func=start_subsystem_init)
|
||||
p = subparsers.add_parser('framework_start_init', aliases=['start_subsystem_init'],
|
||||
help='Start initialization of subsystems')
|
||||
p.set_defaults(func=framework_start_init)
|
||||
|
||||
def wait_subsystem_init(args):
|
||||
rpc.wait_subsystem_init(args.client)
|
||||
|
@ -21,9 +21,10 @@ from . import client as rpc_client
|
||||
from .helpers import deprecated_alias
|
||||
|
||||
|
||||
def start_subsystem_init(client):
|
||||
@deprecated_alias('start_subsystem_init')
|
||||
def framework_start_init(client):
|
||||
"""Start initialization of subsystems"""
|
||||
return client.call('start_subsystem_init')
|
||||
return client.call('framework_start_init')
|
||||
|
||||
|
||||
def wait_subsystem_init(client):
|
||||
@ -99,8 +100,8 @@ def load_config(client, fd, include_aliases=False):
|
||||
|
||||
# check if methods in the config file are known
|
||||
allowed_methods = client.call('rpc_get_methods', {'include_aliases': include_aliases})
|
||||
if not subsystems and 'start_subsystem_init' in allowed_methods:
|
||||
start_subsystem_init(client)
|
||||
if not subsystems and 'framework_start_init' in allowed_methods:
|
||||
framework_start_init(client)
|
||||
return
|
||||
|
||||
for subsystem in list(subsystems):
|
||||
@ -127,8 +128,8 @@ def load_config(client, fd, include_aliases=False):
|
||||
if not config:
|
||||
subsystems.remove(subsystem)
|
||||
|
||||
if 'start_subsystem_init' in allowed_methods:
|
||||
start_subsystem_init(client)
|
||||
if 'framework_start_init' in allowed_methods:
|
||||
framework_start_init(client)
|
||||
allowed_found = True
|
||||
|
||||
if not allowed_found:
|
||||
|
@ -27,7 +27,7 @@ class UIRoot(UINode):
|
||||
if self.is_init is False:
|
||||
methods = "\n".join(self.methods)
|
||||
self.shell.log.warning("SPDK Application is not yet initialized.\n"
|
||||
"Please initialize subsystems with start_subsystem_init command.\n"
|
||||
"Please initialize subsystems with framework_start_init command.\n"
|
||||
"List of available commands in current state:\n"
|
||||
"%s" % methods)
|
||||
else:
|
||||
@ -74,8 +74,8 @@ class UIRoot(UINode):
|
||||
return []
|
||||
return w
|
||||
|
||||
def ui_command_start_subsystem_init(self):
|
||||
if rpc.start_subsystem_init(self.client):
|
||||
def ui_command_framework_start_init(self):
|
||||
if rpc.framework_start_init(self.client):
|
||||
self.is_init = True
|
||||
self.refresh()
|
||||
|
||||
@ -99,7 +99,7 @@ class UIRoot(UINode):
|
||||
return rpc.rpc_get_methods(self.client, current=current)
|
||||
|
||||
def check_init(self):
|
||||
return "start_subsystem_init" not in self.rpc_get_methods(current=True)
|
||||
return "framework_start_init" not in self.rpc_get_methods(current=True)
|
||||
|
||||
def bdev_get_bdevs(self, bdev_type):
|
||||
if self.is_init:
|
||||
|
@ -41,5 +41,5 @@ always be started with the --wait-for-rpc argument. Please see below for an exam
|
||||
./test/app/fuzz/vhost_fuzz/vhost_fuzz -t 30 --wait-for-rpc &
|
||||
./scripts/rpc.py fuzz_vhost_create_dev -s ./Vhost.1 -b -v
|
||||
./scripts/rpc.py fuzz_vhost_create_dev -s ./naa.VhostScsi0.1 -l -v
|
||||
./scripts/rpc.py start_subsystem_init
|
||||
./scripts/rpc.py framework_start_init
|
||||
~~~
|
||||
|
@ -65,7 +65,7 @@ if [ "$TEST_TRANSPORT" == "scsi" ] || [ "$TEST_TRANSPORT" == "all" ]; then
|
||||
fi
|
||||
|
||||
# The test won't actually begin until this option is passed in.
|
||||
$fuzz_generic_rpc_py start_subsystem_init
|
||||
$fuzz_generic_rpc_py framework_start_init
|
||||
|
||||
wait $fuzzpid
|
||||
|
||||
|
@ -24,7 +24,7 @@ waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 4
|
||||
# Minimal number of bdev io pool (5) and cache (1)
|
||||
$rpc_py bdev_set_options -p 5 -c 1
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt
|
||||
|
@ -38,7 +38,7 @@ trap 'killprocess $pid; delete_tmp_conf_files; exit 1 ' SIGINT SIGTERM EXIT
|
||||
|
||||
waitforlisten $pid
|
||||
$rpc_py load_subsystem_config < $testdir/iscsi.json
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt
|
||||
|
@ -75,7 +75,7 @@ trap 'killprocess $pid; iscsitestfini $1 $2; exit 1' SIGINT SIGTERM EXIT
|
||||
|
||||
waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 16
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt
|
||||
|
@ -24,7 +24,7 @@ trap '$rpc_py bdev_split_delete Name0n1 || true; killprocess $pid; iscsitestfini
|
||||
|
||||
waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 4 -b $node_base
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
$rootdir/scripts/gen_nvme.sh --json | $rpc_py load_subsystem_config
|
||||
$rpc_py bdev_malloc_create 512 4096 --name Malloc0
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
@ -37,7 +37,7 @@ trap 'killprocess $pid; iscsitestfini $1 $2; exit 1' SIGINT SIGTERM EXIT
|
||||
|
||||
waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 16
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt
|
||||
|
@ -24,7 +24,7 @@ echo "iSCSI target launched. pid: $pid"
|
||||
trap 'killprocess $pid;exit 1' SIGINT SIGTERM EXIT
|
||||
waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 4
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt
|
||||
|
@ -55,7 +55,7 @@ for ((i = 0; i < 2; i++)); do
|
||||
|
||||
waitforlisten $pid $rpc_addr
|
||||
$rpc_py -s $rpc_addr iscsi_set_options -o 30 -a 64
|
||||
$rpc_py -s $rpc_addr start_subsystem_init
|
||||
$rpc_py -s $rpc_addr framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt_$i
|
||||
|
@ -34,7 +34,7 @@ trap 'iscsicleanup; killprocess $pid; iscsitestfini $1 $2; exit 1' SIGINT SIGTER
|
||||
|
||||
waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 16
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt
|
||||
|
@ -44,7 +44,7 @@ trap 'remove_backends; iscsicleanup; killprocess $iscsipid; iscsitestfini $1 $2;
|
||||
|
||||
waitforlisten $iscsipid
|
||||
$rpc_py iscsi_set_options -o 30 -a 128
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
$rootdir/scripts/gen_nvme.sh --json | $rpc_py load_subsystem_config
|
||||
timing_exit start_iscsi_tgt
|
||||
|
||||
|
@ -30,7 +30,7 @@ function run_nvme_remote() {
|
||||
trap 'killprocess $iscsipid; iscsitestfini $1 $2; nvmftestfini; exit 1' SIGINT SIGTERM EXIT
|
||||
waitforlisten $iscsipid "$iscsi_rpc_addr"
|
||||
$rpc_py -s "$iscsi_rpc_addr" iscsi_set_options -o 30 -a 16
|
||||
$rpc_py -s "$iscsi_rpc_addr" start_subsystem_init
|
||||
$rpc_py -s "$iscsi_rpc_addr" framework_start_init
|
||||
if [ "$1" = "remote" ]; then
|
||||
$rpc_py -s $iscsi_rpc_addr bdev_nvme_attach_controller -b "Nvme0" -t "rdma" -f "ipv4" -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT -n nqn.2016-06.io.spdk:cnode1
|
||||
fi
|
||||
@ -62,7 +62,7 @@ nvmfpid=$!
|
||||
echo "NVMf target launched. pid: $nvmfpid"
|
||||
trap 'iscsitestfini $1 $2; nvmftestfini; exit 1' SIGINT SIGTERM EXIT
|
||||
waitforlisten $nvmfpid
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
$rpc_py nvmf_create_transport -t RDMA -u 8192
|
||||
echo "NVMf target has started."
|
||||
bdevs=$($rpc_py bdev_malloc_create 64 512)
|
||||
|
@ -84,7 +84,7 @@ pid=$!
|
||||
trap 'rm -f $testdir/perf.job; killprocess $pid; print_backtrace; exit 1' ERR SIGTERM SIGABRT
|
||||
waitforlisten "$pid" "$testdir/rpc_iscsi.sock"
|
||||
$rpc_py iscsi_set_options -b "iqn.2016-06.io.spdk" -f "/usr/local/etc/spdk/auth.conf" -o 30 -i -l 0 -a 16
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
$rootdir/scripts/gen_nvme.sh --json | $rpc_py load_subsystem_config
|
||||
sleep 1
|
||||
timing_exit run_iscsi_app
|
||||
|
@ -26,7 +26,7 @@ trap 'iscsicleanup; killprocess $pid; rm -f /tmp/pool_file*; exit 1' SIGINT SIGT
|
||||
|
||||
waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 16
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
timing_exit start_iscsi_target
|
||||
|
||||
|
@ -33,7 +33,7 @@ trap 'killprocess $pid; rbd_cleanup; iscsitestfini $1 $2; exit 1' SIGINT SIGTERM
|
||||
|
||||
waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 16
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt
|
||||
|
@ -31,7 +31,7 @@ trap 'killprocess $pid; exit 1' SIGINT SIGTERM EXIT
|
||||
|
||||
waitforlisten $pid
|
||||
$rpc_py iscsi_set_options -o 30 -a 16
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
timing_exit start_iscsi_tgt
|
||||
|
@ -39,7 +39,7 @@ $rpc_py iscsi_set_options -o 30 -a 16
|
||||
# RPC wait_subsystem_init should be blocked, so its process must be existed
|
||||
ps $rpc_wait_pid
|
||||
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
echo "iscsi_tgt is listening. Running tests..."
|
||||
|
||||
# RPC wait_subsystem_init should be already returned, so its process must be non-existed
|
||||
|
@ -71,9 +71,9 @@ if __name__ == "__main__":
|
||||
check_empty
|
||||
check if provided configuration is logically empty
|
||||
delete_global_parameters
|
||||
remove pre-init configuration (pre start_subsystem_init RPC methods)
|
||||
remove pre-init configuration (pre framework_start_init RPC methods)
|
||||
delete_configs
|
||||
remove post-init configuration (post start_subsystem_init RPC methods)
|
||||
remove post-init configuration (post framework_start_init RPC methods)
|
||||
sort
|
||||
remove nothing - just sort JSON objects (and subobjects but not arrays)
|
||||
in lexicographical order. This can be used to do plain text diff.""")
|
||||
|
@ -344,7 +344,7 @@ function json_config_test_init()
|
||||
|
||||
#TODO: global subsystem params
|
||||
|
||||
# Load nvme configuration. The load_config will issue start_subsystem_init automatically
|
||||
# Load nvme configuration. The load_config will issue framework_start_init automatically
|
||||
(
|
||||
echo '{"subsystems": [';
|
||||
$rootdir/scripts/gen_nvme.sh --json | jq -r "del(.config[] | select(.params.name!=\"Nvme0\"))"
|
||||
|
@ -16,7 +16,7 @@ nvmfappstart "-m 0xF --wait-for-rpc"
|
||||
|
||||
# Minimal number of bdev io pool (5) and cache (1)
|
||||
$rpc_py bdev_set_options -p 5 -c 1
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
$rpc_py nvmf_create_transport $NVMF_TRANSPORT_OPTS -u 8192
|
||||
|
||||
$rpc_py bdev_malloc_create $MALLOC_BDEV_SIZE $MALLOC_BLOCK_SIZE -b Malloc0
|
||||
|
@ -14,11 +14,11 @@ trap 'on_error_exit;' ERR
|
||||
|
||||
timing_enter run_iscsi_tgt
|
||||
|
||||
# Running iscsi target with --wait-for-rpc. Implies start_subsystem_init later
|
||||
# Running iscsi target with --wait-for-rpc. Implies framework_start_init later
|
||||
$rootdir/app/iscsi_tgt/iscsi_tgt -m 0x3 -p 0 -s 4096 --wait-for-rpc &
|
||||
iscsi_tgt_pid=$!
|
||||
waitforlisten $iscsi_tgt_pid
|
||||
$rootdir/scripts/rpc.py start_subsystem_init
|
||||
$rootdir/scripts/rpc.py framework_start_init
|
||||
|
||||
timing_exit run_iscsi_tgt
|
||||
|
||||
|
@ -45,6 +45,7 @@ DEFINE_STUB(spdk_event_allocate, struct spdk_event *, (uint32_t core, spdk_event
|
||||
DEFINE_STUB_V(spdk_subsystem_init, (spdk_subsystem_init_fn cb_fn, void *cb_arg));
|
||||
DEFINE_STUB_V(spdk_rpc_register_method, (const char *method, spdk_rpc_method_handler func,
|
||||
uint32_t state_mask));
|
||||
DEFINE_STUB_V(spdk_rpc_register_alias_deprecated, (const char *method, const char *alias));
|
||||
DEFINE_STUB_V(spdk_rpc_set_state, (uint32_t state));
|
||||
DEFINE_STUB(spdk_rpc_get_state, uint32_t, (void), SPDK_RPC_RUNTIME);
|
||||
DEFINE_STUB_V(spdk_app_json_config_load, (const char *json_config_file, const char *rpc_addr,
|
||||
|
@ -45,7 +45,7 @@ $fuzz_specific_rpc_py fuzz_vhost_create_dev -s $(pwd)/naa.VhostScsi0.1 -l -v
|
||||
# test the vhost scsi management queue with valid data buffers.
|
||||
$fuzz_specific_rpc_py fuzz_vhost_create_dev -s $(pwd)/naa.VhostScsi0.2 -v -m
|
||||
# The test won't actually begin until this option is passed in.
|
||||
$fuzz_generic_rpc_py start_subsystem_init
|
||||
$fuzz_generic_rpc_py framework_start_init
|
||||
|
||||
wait $fuzzpid
|
||||
|
||||
@ -59,7 +59,7 @@ trap 'killprocess $vhostpid; killprocess $fuzzpid; exit 1' SIGINT SIGTERM exit
|
||||
$fuzz_specific_rpc_py fuzz_vhost_create_dev -s $(pwd)/Vhost.1 -b -v
|
||||
$fuzz_specific_rpc_py fuzz_vhost_create_dev -s $(pwd)/naa.VhostScsi0.1 -l -v
|
||||
$fuzz_specific_rpc_py fuzz_vhost_create_dev -s $(pwd)/naa.VhostScsi0.2 -v -m
|
||||
$fuzz_generic_rpc_py start_subsystem_init
|
||||
$fuzz_generic_rpc_py framework_start_init
|
||||
|
||||
wait $fuzzpid
|
||||
|
||||
|
@ -97,7 +97,7 @@ function migration_tc2_configure_vhost()
|
||||
local nvmf_tgt_pid=$!
|
||||
echo $nvmf_tgt_pid > $nvmf_dir/nvmf_tgt.pid
|
||||
waitforlisten "$nvmf_tgt_pid" "$nvmf_dir/rpc.sock"
|
||||
$rpc_nvmf start_subsystem_init
|
||||
$rpc_nvmf framework_start_init
|
||||
$rpc_nvmf nvmf_create_transport -t RDMA -u 8192
|
||||
$rootdir/scripts/gen_nvme.sh --json | $rpc_nvmf load_subsystem_config
|
||||
timing_exit start_nvmf_tgt
|
||||
|
@ -107,7 +107,7 @@ function host1_start_nvmf()
|
||||
nvmf_tgt_pid=$!
|
||||
echo $nvmf_tgt_pid > $nvmf_dir/nvmf_tgt.pid
|
||||
waitforlisten "$nvmf_tgt_pid" "$nvmf_dir/nvmf_rpc.sock"
|
||||
$rpc_nvmf start_subsystem_init
|
||||
$rpc_nvmf framework_start_init
|
||||
$rpc_nvmf nvmf_create_transport -t RDMA -u 8192
|
||||
$rootdir/scripts/gen_nvme.sh --json | $rpc_nvmf load_subsystem_config
|
||||
|
||||
|
@ -48,7 +48,7 @@ trap 'killprocess $svcpid; exit 1' SIGINT SIGTERM EXIT
|
||||
waitforlisten $svcpid
|
||||
|
||||
$rpc_py enable_vmd
|
||||
$rpc_py start_subsystem_init
|
||||
$rpc_py framework_start_init
|
||||
|
||||
for bdf in $pci_devs; do
|
||||
$rpc_py bdev_nvme_attach_controller -b NVMe_$bdf -t PCIe -a $bdf
|
||||
|
Loading…
Reference in New Issue
Block a user