rpc: Rename kill_instance to spdk_kill_instance

Change-Id: Iebd24cc1be4665f179975f6fc14e0d4c3849d506
Signed-off-by: Pawel Kaminski <pawelx.kaminski@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/468901
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Paul Luse <paul.e.luse@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
Pawel Kaminski 2019-09-19 17:13:36 -04:00 committed by Jim Harris
parent 0772af4de9
commit 3402bfbd7c
7 changed files with 33 additions and 27 deletions

View File

@ -56,7 +56,7 @@ This type of error is most common one. It mean that there is an error while proc
# App Framework {#jsonrpc_components_app}
## kill_instance {#rpc_kill_instance}
## spdk_kill_instance {#rpc_spdk_kill_instance}
Send a signal to the application.
@ -74,7 +74,7 @@ Example request:
{
"jsonrpc": "2.0",
"id": 1,
"method": "kill_instance",
"method": "spdk_kill_instance",
"params": {
"sig_name": "SIGINT"
}
@ -278,7 +278,7 @@ Example response:
"get_subsystem_config",
"get_subsystems",
"context_switch_monitor",
"kill_instance",
"spdk_kill_instance",
"ioat_scan_copy_engine",
"bdev_virtio_attach_controller",
"bdev_virtio_scsi_get_devices",

View File

@ -42,23 +42,23 @@
#include "spdk_internal/log.h"
struct rpc_kill_instance {
struct rpc_spdk_kill_instance {
char *sig_name;
};
static void
free_rpc_kill_instance(struct rpc_kill_instance *req)
free_rpc_spdk_kill_instance(struct rpc_spdk_kill_instance *req)
{
free(req->sig_name);
}
static const struct spdk_json_object_decoder rpc_kill_instance_decoders[] = {
{"sig_name", offsetof(struct rpc_kill_instance, sig_name), spdk_json_decode_string},
static const struct spdk_json_object_decoder rpc_spdk_kill_instance_decoders[] = {
{"sig_name", offsetof(struct rpc_spdk_kill_instance, sig_name), spdk_json_decode_string},
};
static void
spdk_rpc_kill_instance(struct spdk_jsonrpc_request *request,
const struct spdk_json_val *params)
spdk_rpc_spdk_kill_instance(struct spdk_jsonrpc_request *request,
const struct spdk_json_val *params)
{
static const struct {
const char *signal_string;
@ -72,11 +72,11 @@ spdk_rpc_kill_instance(struct spdk_jsonrpc_request *request,
};
size_t i, sig_count;
int signal;
struct rpc_kill_instance req = {};
struct rpc_spdk_kill_instance req = {};
struct spdk_json_write_ctx *w;
if (spdk_json_decode_object(params, rpc_kill_instance_decoders,
SPDK_COUNTOF(rpc_kill_instance_decoders),
if (spdk_json_decode_object(params, rpc_spdk_kill_instance_decoders,
SPDK_COUNTOF(rpc_spdk_kill_instance_decoders),
&req)) {
SPDK_DEBUGLOG(SPDK_LOG_REACTOR, "spdk_json_decode_object failed\n");
goto invalid;
@ -96,7 +96,7 @@ spdk_rpc_kill_instance(struct spdk_jsonrpc_request *request,
}
SPDK_DEBUGLOG(SPDK_LOG_REACTOR, "sending signal %d\n", signals[i].signal);
free_rpc_kill_instance(&req);
free_rpc_spdk_kill_instance(&req);
kill(getpid(), signals[i].signal);
w = spdk_jsonrpc_begin_result(request);
@ -106,9 +106,10 @@ spdk_rpc_kill_instance(struct spdk_jsonrpc_request *request,
invalid:
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS, "Invalid parameters");
free_rpc_kill_instance(&req);
free_rpc_spdk_kill_instance(&req);
}
SPDK_RPC_REGISTER("kill_instance", spdk_rpc_kill_instance, SPDK_RPC_RUNTIME)
SPDK_RPC_REGISTER("spdk_kill_instance", spdk_rpc_spdk_kill_instance, SPDK_RPC_RUNTIME)
SPDK_RPC_REGISTER_ALIAS_DEPRECATED(spdk_kill_instance, kill_instance)
struct rpc_context_switch_monitor {

View File

@ -108,13 +108,14 @@ if __name__ == "__main__":
p.set_defaults(func=load_subsystem_config)
# app
def kill_instance(args):
rpc.app.kill_instance(args.client,
sig_name=args.sig_name)
def spdk_kill_instance(args):
rpc.app.spdk_kill_instance(args.client,
sig_name=args.sig_name)
p = subparsers.add_parser('kill_instance', help='Send signal to instance')
p = subparsers.add_parser('spdk_kill_instance', aliases=['kill_instance'],
help='Send signal to instance')
p.add_argument('sig_name', help='signal will be sent to server.')
p.set_defaults(func=kill_instance)
p.set_defaults(func=spdk_kill_instance)
def context_switch_monitor(args):
enabled = None

View File

@ -1,11 +1,15 @@
def kill_instance(client, sig_name):
from .helpers import deprecated_alias
@deprecated_alias('kill_instance')
def spdk_kill_instance(client, sig_name):
"""Send a signal to the SPDK process.
Args:
sig_name: signal to send ("SIGINT", "SIGTERM", "SIGQUIT", "SIGHUP", or "SIGKILL")
"""
params = {'sig_name': sig_name}
return client.call('kill_instance', params)
return client.call('spdk_kill_instance', params)
def context_switch_monitor(client, enabled=None):

View File

@ -151,7 +151,7 @@ class JSONRPCClient(object):
response = self.recv()
except JSONRPCException as e:
""" Don't expect response to kill """
if not self.sock and method == "kill_instance":
if not self.sock and method == "spdk_kill_instance":
self._logger.info("Connection terminated but ignoring since method is '%s'" % method)
return {}
else:

View File

@ -21,7 +21,7 @@ MIGRATION_ADDRESS=127.0.0.2
function kill_all_iscsi_target() {
for ((i = 0; i < 2; i++)); do
rpc_addr="/var/tmp/spdk${i}.sock"
$rpc_py -s $rpc_addr kill_instance SIGTERM
$rpc_py -s $rpc_addr spdk_kill_instance SIGTERM
done
}
@ -78,7 +78,7 @@ $fio_py -p iscsi -i 4096 -d 32 -t randrw -r 10 &
fiopid=$!
sleep 5
$rpc_py -s $rpc_first_addr kill_instance SIGTERM
$rpc_py -s $rpc_first_addr spdk_kill_instance SIGTERM
rpc_second_addr="/var/tmp/spdk1.sock"
rpc_add_target_node $rpc_second_addr
@ -89,7 +89,7 @@ trap - SIGINT SIGTERM EXIT
iscsicleanup
$rpc_py -s $rpc_second_addr kill_instance SIGTERM
$rpc_py -s $rpc_second_addr spdk_kill_instance SIGTERM
iscsitestfini $1 $2
report_test_completion "iscsi_ip_migration"
timing_exit ip_migration

View File

@ -129,7 +129,7 @@ function json_config_test_shutdown_app() {
[[ -n "${#app_socket[$app]}" ]]
[[ -n "${app_pid[$app]}" ]]
# kill_instance RPC will trigger ASAN
# spdk_kill_instance RPC will trigger ASAN
kill -SIGINT ${app_pid[$app]}
for (( i=0; i<30; i++ )); do