From 326e68fc324022d8ed5ed62f5c9d73eb24bfebed Mon Sep 17 00:00:00 2001 From: Maciej Wawryk Date: Wed, 11 Sep 2019 10:28:07 +0200 Subject: [PATCH] RPC: rename rpc bdev_get_iostat to bdev_get_iostat Signed-off-by: Maciej Wawryk Change-Id: I77d3df4e493f64da8ce351e8fe14028706b55329 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/468045 Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Paul Luse Reviewed-by: Shuhei Matsumoto --- doc/jsonrpc.md | 6 ++--- module/bdev/rpc/bdev_rpc.c | 47 ++++++++++++++++++------------------ scripts/rpc.py | 12 ++++----- scripts/rpc/bdev.py | 5 ++-- scripts/spdkcli/ui_node.py | 2 +- scripts/spdkcli/ui_root.py | 4 +-- test/iscsi_tgt/qos/qos.sh | 4 +-- test/nvmf/target/shutdown.sh | 2 +- 8 files changed, 42 insertions(+), 40 deletions(-) diff --git a/doc/jsonrpc.md b/doc/jsonrpc.md index d271de314..7465e0346 100644 --- a/doc/jsonrpc.md +++ b/doc/jsonrpc.md @@ -274,7 +274,7 @@ Example response: "set_bdev_options", "set_bdev_qos_limit", "get_bdevs", - "get_bdevs_iostat", + "bdev_get_iostat", "get_subsystem_config", "get_subsystems", "context_switch_monitor", @@ -626,7 +626,7 @@ Example response: } ~~~ -## get_bdevs_iostat {#rpc_get_bdevs_iostat} +## bdev_get_iostat {#rpc_bdev_get_iostat} Get I/O statistics of block devices (bdevs). @@ -651,7 +651,7 @@ Example request: { "jsonrpc": "2.0", "id": 1, - "method": "get_bdevs_iostat", + "method": "bdev_get_iostat", "params": { "name": "Nvme0n1" } diff --git a/module/bdev/rpc/bdev_rpc.c b/module/bdev/rpc/bdev_rpc.c index 3b37fc11d..72db6ebc8 100644 --- a/module/bdev/rpc/bdev_rpc.c +++ b/module/bdev/rpc/bdev_rpc.c @@ -41,17 +41,17 @@ #include "spdk/bdev_module.h" -struct rpc_get_bdevs_iostat_ctx { +struct rpc_bdev_get_iostat_ctx { int bdev_count; struct spdk_jsonrpc_request *request; struct spdk_json_write_ctx *w; }; static void -spdk_rpc_get_bdevs_iostat_cb(struct spdk_bdev *bdev, - struct spdk_bdev_io_stat *stat, void *cb_arg, int rc) +spdk_rpc_bdev_get_iostat_cb(struct spdk_bdev *bdev, + struct spdk_bdev_io_stat *stat, void *cb_arg, int rc) { - struct rpc_get_bdevs_iostat_ctx *ctx = cb_arg; + struct rpc_bdev_get_iostat_ctx *ctx = cb_arg; struct spdk_json_write_ctx *w = ctx->w; const char *bdev_name; @@ -108,38 +108,38 @@ done: } } -struct rpc_get_bdevs_iostat { +struct rpc_bdev_get_iostat { char *name; }; static void -free_rpc_get_bdevs_iostat(struct rpc_get_bdevs_iostat *r) +free_rpc_bdev_get_iostat(struct rpc_bdev_get_iostat *r) { free(r->name); } -static const struct spdk_json_object_decoder rpc_get_bdevs_iostat_decoders[] = { - {"name", offsetof(struct rpc_get_bdevs_iostat, name), spdk_json_decode_string, true}, +static const struct spdk_json_object_decoder rpc_bdev_get_iostat_decoders[] = { + {"name", offsetof(struct rpc_bdev_get_iostat, name), spdk_json_decode_string, true}, }; static void -spdk_rpc_get_bdevs_iostat(struct spdk_jsonrpc_request *request, - const struct spdk_json_val *params) +spdk_rpc_bdev_get_iostat(struct spdk_jsonrpc_request *request, + const struct spdk_json_val *params) { - struct rpc_get_bdevs_iostat req = {}; + struct rpc_bdev_get_iostat req = {}; struct spdk_bdev *bdev = NULL; struct spdk_json_write_ctx *w; struct spdk_bdev_io_stat *stat; - struct rpc_get_bdevs_iostat_ctx *ctx; + struct rpc_bdev_get_iostat_ctx *ctx; if (params != NULL) { - if (spdk_json_decode_object(params, rpc_get_bdevs_iostat_decoders, - SPDK_COUNTOF(rpc_get_bdevs_iostat_decoders), + if (spdk_json_decode_object(params, rpc_bdev_get_iostat_decoders, + SPDK_COUNTOF(rpc_bdev_get_iostat_decoders), &req)) { SPDK_ERRLOG("spdk_json_decode_object failed\n"); spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INTERNAL_ERROR, "spdk_json_decode_object failed"); - free_rpc_get_bdevs_iostat(&req); + free_rpc_bdev_get_iostat(&req); return; } @@ -148,17 +148,17 @@ spdk_rpc_get_bdevs_iostat(struct spdk_jsonrpc_request *request, if (bdev == NULL) { SPDK_ERRLOG("bdev '%s' does not exist\n", req.name); spdk_jsonrpc_send_error_response(request, -ENODEV, spdk_strerror(ENODEV)); - free_rpc_get_bdevs_iostat(&req); + free_rpc_bdev_get_iostat(&req); return; } } } - free_rpc_get_bdevs_iostat(&req); + free_rpc_bdev_get_iostat(&req); - ctx = calloc(1, sizeof(struct rpc_get_bdevs_iostat_ctx)); + ctx = calloc(1, sizeof(struct rpc_bdev_get_iostat_ctx)); if (ctx == NULL) { - SPDK_ERRLOG("Failed to allocate rpc_get_bdevs_iostat_ctx struct\n"); + SPDK_ERRLOG("Failed to allocate rpc_bdev_get_iostat_ctx struct\n"); spdk_jsonrpc_send_error_response(request, -ENOMEM, spdk_strerror(ENOMEM)); return; } @@ -181,10 +181,10 @@ spdk_rpc_get_bdevs_iostat(struct spdk_jsonrpc_request *request, if (bdev != NULL) { stat = calloc(1, sizeof(struct spdk_bdev_io_stat)); if (stat == NULL) { - SPDK_ERRLOG("Failed to allocate rpc_get_bdevs_iostat_ctx struct\n"); + SPDK_ERRLOG("Failed to allocate rpc_bdev_get_iostat_ctx struct\n"); } else { ctx->bdev_count++; - spdk_bdev_get_device_stat(bdev, stat, spdk_rpc_get_bdevs_iostat_cb, ctx); + spdk_bdev_get_device_stat(bdev, stat, spdk_rpc_bdev_get_iostat_cb, ctx); } } else { for (bdev = spdk_bdev_first(); bdev != NULL; bdev = spdk_bdev_next(bdev)) { @@ -194,7 +194,7 @@ spdk_rpc_get_bdevs_iostat(struct spdk_jsonrpc_request *request, break; } ctx->bdev_count++; - spdk_bdev_get_device_stat(bdev, stat, spdk_rpc_get_bdevs_iostat_cb, ctx); + spdk_bdev_get_device_stat(bdev, stat, spdk_rpc_bdev_get_iostat_cb, ctx); } } @@ -205,7 +205,8 @@ spdk_rpc_get_bdevs_iostat(struct spdk_jsonrpc_request *request, free(ctx); } } -SPDK_RPC_REGISTER("get_bdevs_iostat", spdk_rpc_get_bdevs_iostat, SPDK_RPC_RUNTIME) +SPDK_RPC_REGISTER("bdev_get_iostat", spdk_rpc_bdev_get_iostat, SPDK_RPC_RUNTIME) +SPDK_RPC_REGISTER_ALIAS_DEPRECATED(bdev_get_iostat, get_bdevs_iostat) static void spdk_rpc_dump_bdev_info(struct spdk_json_write_ctx *w, diff --git a/scripts/rpc.py b/scripts/rpc.py index cf3c6f69f..fbf37ecfb 100755 --- a/scripts/rpc.py +++ b/scripts/rpc.py @@ -579,14 +579,14 @@ if __name__ == "__main__": p.add_argument('-b', '--name', help="Name of the Blockdev. Example: Nvme0n1", required=False) p.set_defaults(func=get_bdevs) - def get_bdevs_iostat(args): - print_dict(rpc.bdev.get_bdevs_iostat(args.client, - name=args.name)) + def bdev_get_iostat(args): + print_dict(rpc.bdev.bdev_get_iostat(args.client, + name=args.name)) - p = subparsers.add_parser( - 'get_bdevs_iostat', help='Display current I/O statistics of all the blockdevs or required blockdev.') + p = subparsers.add_parser('bdev_get_iostat', aliases=['get_bdevs_iostat'], + help='Display current I/O statistics of all the blockdevs or required blockdev.') p.add_argument('-b', '--name', help="Name of the Blockdev. Example: Nvme0n1", required=False) - p.set_defaults(func=get_bdevs_iostat) + p.set_defaults(func=bdev_get_iostat) def enable_bdev_histogram(args): rpc.bdev.enable_bdev_histogram(args.client, name=args.name, enable=args.enable) diff --git a/scripts/rpc/bdev.py b/scripts/rpc/bdev.py index c344ab73c..bd7e0d235 100644 --- a/scripts/rpc/bdev.py +++ b/scripts/rpc/bdev.py @@ -718,7 +718,8 @@ def get_bdevs(client, name=None): return client.call('get_bdevs', params) -def get_bdevs_iostat(client, name=None): +@deprecated_alias('get_bdevs_iostat') +def bdev_get_iostat(client, name=None): """Get I/O statistics for block devices. Args: @@ -730,7 +731,7 @@ def get_bdevs_iostat(client, name=None): params = {} if name: params['name'] = name - return client.call('get_bdevs_iostat', params) + return client.call('bdev_get_iostat', params) def enable_bdev_histogram(client, name, enable): diff --git a/scripts/spdkcli/ui_node.py b/scripts/spdkcli/ui_node.py index 71972b8bb..bab4f9c8f 100644 --- a/scripts/spdkcli/ui_node.py +++ b/scripts/spdkcli/ui_node.py @@ -143,7 +143,7 @@ class UIBdev(UINode): UIBdevObj(bdev, self) def ui_command_get_bdev_iostat(self, name=None): - ret = self.get_root().get_bdevs_iostat(name=name) + ret = self.get_root().bdev_get_iostat(name=name) self.shell.log.info(json.dumps(ret, indent=2)) def ui_command_delete_all(self): diff --git a/scripts/spdkcli/ui_root.py b/scripts/spdkcli/ui_root.py index 635ab0cc2..8ed89304b 100644 --- a/scripts/spdkcli/ui_root.py +++ b/scripts/spdkcli/ui_root.py @@ -113,8 +113,8 @@ class UIRoot(UINode): test = Bdev(bdev) yield test - def get_bdevs_iostat(self, **kwargs): - return rpc.bdev.get_bdevs_iostat(self.client, **kwargs) + def bdev_get_iostat(self, **kwargs): + return rpc.bdev.bdev_get_iostat(self.client, **kwargs) @verbose def split_bdev(self, **kwargs): diff --git a/test/iscsi_tgt/qos/qos.sh b/test/iscsi_tgt/qos/qos.sh index 46a6e7614..ad4691421 100755 --- a/test/iscsi_tgt/qos/qos.sh +++ b/test/iscsi_tgt/qos/qos.sh @@ -11,7 +11,7 @@ iscsitestinit $1 $2 function run_fio() { local bdev_name=$1 - local iostats=$($rpc_py get_bdevs_iostat -b $bdev_name) + local iostats=$($rpc_py bdev_get_iostat -b $bdev_name) local run_time=5 local start_io_count=$(jq -r '.bdevs[0].num_read_ops' <<< "$iostats") @@ -19,7 +19,7 @@ function run_fio() { $fio_py -p iscsi -i 1024 -d 128 -t randread -r $run_time - iostats=$($rpc_py get_bdevs_iostat -b $bdev_name) + iostats=$($rpc_py bdev_get_iostat -b $bdev_name) local end_io_count=$(jq -r '.bdevs[0].num_read_ops' <<< "$iostats") local end_bytes_read=$(jq -r '.bdevs[0].bytes_read' <<< "$iostats") diff --git a/test/nvmf/target/shutdown.sh b/test/nvmf/target/shutdown.sh index 82e5f5d18..a92221a93 100755 --- a/test/nvmf/target/shutdown.sh +++ b/test/nvmf/target/shutdown.sh @@ -22,7 +22,7 @@ function waitforio() { local ret=1 local i for (( i = 10; i != 0; i-- )); do - read_io_count=$($rpc_py -s $1 get_bdevs_iostat -b $2 | jq -r '.bdevs[0].num_read_ops') + read_io_count=$($rpc_py -s $1 bdev_get_iostat -b $2 | jq -r '.bdevs[0].num_read_ops') # A few I/O will happen during initial examine. So wait until at least 100 I/O # have completed to know that bdevperf is really generating the I/O. if [ $read_io_count -ge 100 ]; then