RPC: rename enable_bdev_histogram to bdev_enable_histogram
Signed-off-by: Maciej Wawryk <maciejx.wawryk@intel.com> Change-Id: Ie60cf733138c677af71db66d24880af33b099673 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/468085 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Reviewed-by: Paul Luse <paul.e.luse@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
parent
c61e14be6c
commit
ab6ce82806
@ -83,13 +83,13 @@ limit. Users can run this command with `-h` or `--help` for more information.
|
||||
|
||||
## Histograms {#rpc_bdev_histogram}
|
||||
|
||||
The `enable_bdev_histogram` RPC command allows to enable or disable gathering
|
||||
The `bdev_enable_histogram` RPC command allows to enable or disable gathering
|
||||
latency data for specified bdev. Histogram can be downloaded by the user by
|
||||
calling `get_bdev_histogram` and parsed using scripts/histogram.py script.
|
||||
|
||||
Example command
|
||||
|
||||
`rpc.py enable_bdev_histogram Nvme0n1 --enable`
|
||||
`rpc.py bdev_enable_histogram Nvme0n1 --enable`
|
||||
|
||||
The command will enable gathering data for histogram on Nvme0n1 device.
|
||||
|
||||
@ -98,7 +98,7 @@ The command will enable gathering data for histogram on Nvme0n1 device.
|
||||
The command will download gathered histogram data. The script will parse
|
||||
the data and show table containing IO count for latency ranges.
|
||||
|
||||
`rpc.py enable_bdev_histogram Nvme0n1 --disable`
|
||||
`rpc.py bdev_enable_histogram Nvme0n1 --disable`
|
||||
|
||||
The command will disable histogram on Nvme0n1 device.
|
||||
|
||||
|
@ -688,7 +688,7 @@ Example response:
|
||||
}
|
||||
~~~
|
||||
|
||||
## enable_bdev_histogram {#rpc_enable_bdev_histogram}
|
||||
## bdev_enable_histogram {#rpc_bdev_enable_histogram}
|
||||
|
||||
Control whether collecting data for histogram is enabled for specified bdev.
|
||||
|
||||
@ -707,7 +707,7 @@ Example request:
|
||||
{
|
||||
"jsonrpc": "2.0",
|
||||
"id": 1,
|
||||
"method": "enable_bdev_histogram",
|
||||
"method": "bdev_enable_histogram",
|
||||
"params": {
|
||||
"name": "Nvme0n1"
|
||||
"enable": true
|
||||
|
@ -509,20 +509,20 @@ SPDK_RPC_REGISTER_ALIAS_DEPRECATED(bdev_set_qos_limit, set_bdev_qos_limit)
|
||||
|
||||
/* SPDK_RPC_ENABLE_BDEV_HISTOGRAM */
|
||||
|
||||
struct rpc_enable_bdev_histogram_request {
|
||||
struct rpc_bdev_enable_histogram_request {
|
||||
char *name;
|
||||
bool enable;
|
||||
};
|
||||
|
||||
static void
|
||||
free_rpc_enable_bdev_histogram_request(struct rpc_enable_bdev_histogram_request *r)
|
||||
free_rpc_bdev_enable_histogram_request(struct rpc_bdev_enable_histogram_request *r)
|
||||
{
|
||||
free(r->name);
|
||||
}
|
||||
|
||||
static const struct spdk_json_object_decoder rpc_enable_bdev_histogram_request_decoders[] = {
|
||||
{"name", offsetof(struct rpc_enable_bdev_histogram_request, name), spdk_json_decode_string},
|
||||
{"enable", offsetof(struct rpc_enable_bdev_histogram_request, enable), spdk_json_decode_bool},
|
||||
static const struct spdk_json_object_decoder rpc_bdev_enable_histogram_request_decoders[] = {
|
||||
{"name", offsetof(struct rpc_bdev_enable_histogram_request, name), spdk_json_decode_string},
|
||||
{"enable", offsetof(struct rpc_bdev_enable_histogram_request, enable), spdk_json_decode_bool},
|
||||
};
|
||||
|
||||
static void
|
||||
@ -536,14 +536,14 @@ _spdk_bdev_histogram_status_cb(void *cb_arg, int status)
|
||||
}
|
||||
|
||||
static void
|
||||
spdk_rpc_enable_bdev_histogram(struct spdk_jsonrpc_request *request,
|
||||
spdk_rpc_bdev_enable_histogram(struct spdk_jsonrpc_request *request,
|
||||
const struct spdk_json_val *params)
|
||||
{
|
||||
struct rpc_enable_bdev_histogram_request req = {NULL};
|
||||
struct rpc_bdev_enable_histogram_request req = {NULL};
|
||||
struct spdk_bdev *bdev;
|
||||
|
||||
if (spdk_json_decode_object(params, rpc_enable_bdev_histogram_request_decoders,
|
||||
SPDK_COUNTOF(rpc_enable_bdev_histogram_request_decoders),
|
||||
if (spdk_json_decode_object(params, rpc_bdev_enable_histogram_request_decoders,
|
||||
SPDK_COUNTOF(rpc_bdev_enable_histogram_request_decoders),
|
||||
&req)) {
|
||||
SPDK_ERRLOG("spdk_json_decode_object failed\n");
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INTERNAL_ERROR,
|
||||
@ -560,10 +560,11 @@ spdk_rpc_enable_bdev_histogram(struct spdk_jsonrpc_request *request,
|
||||
spdk_bdev_histogram_enable(bdev, _spdk_bdev_histogram_status_cb, request, req.enable);
|
||||
|
||||
cleanup:
|
||||
free_rpc_enable_bdev_histogram_request(&req);
|
||||
free_rpc_bdev_enable_histogram_request(&req);
|
||||
}
|
||||
|
||||
SPDK_RPC_REGISTER("enable_bdev_histogram", spdk_rpc_enable_bdev_histogram, SPDK_RPC_RUNTIME)
|
||||
SPDK_RPC_REGISTER("bdev_enable_histogram", spdk_rpc_bdev_enable_histogram, SPDK_RPC_RUNTIME)
|
||||
SPDK_RPC_REGISTER_ALIAS_DEPRECATED(bdev_enable_histogram, enable_bdev_histogram)
|
||||
|
||||
/* SPDK_RPC_GET_BDEV_HISTOGRAM */
|
||||
|
||||
|
@ -588,14 +588,15 @@ if __name__ == "__main__":
|
||||
p.add_argument('-b', '--name', help="Name of the Blockdev. Example: Nvme0n1", required=False)
|
||||
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)
|
||||
def bdev_enable_histogram(args):
|
||||
rpc.bdev.bdev_enable_histogram(args.client, name=args.name, enable=args.enable)
|
||||
|
||||
p = subparsers.add_parser('enable_bdev_histogram', help='Enable or disable histogram for specified bdev')
|
||||
p = subparsers.add_parser('bdev_enable_histogram', aliases=['enable_bdev_histogram'],
|
||||
help='Enable or disable histogram for specified bdev')
|
||||
p.add_argument('-e', '--enable', default=True, dest='enable', action='store_true', help='Enable histograms on specified device')
|
||||
p.add_argument('-d', '--disable', dest='enable', action='store_false', help='Disable histograms on specified device')
|
||||
p.add_argument('name', help='bdev name')
|
||||
p.set_defaults(func=enable_bdev_histogram)
|
||||
p.set_defaults(func=bdev_enable_histogram)
|
||||
|
||||
def get_bdev_histogram(args):
|
||||
print_dict(rpc.bdev.get_bdev_histogram(args.client, name=args.name))
|
||||
|
@ -735,14 +735,15 @@ def bdev_get_iostat(client, name=None):
|
||||
return client.call('bdev_get_iostat', params)
|
||||
|
||||
|
||||
def enable_bdev_histogram(client, name, enable):
|
||||
@deprecated_alias('enable_bdev_histogram')
|
||||
def bdev_enable_histogram(client, name, enable):
|
||||
"""Control whether histogram is enabled for specified bdev.
|
||||
|
||||
Args:
|
||||
bdev_name: name of bdev
|
||||
"""
|
||||
params = {'name': name, "enable": enable}
|
||||
return client.call('enable_bdev_histogram', params)
|
||||
return client.call('bdev_enable_histogram', params)
|
||||
|
||||
|
||||
def get_bdev_histogram(client, name):
|
||||
|
@ -38,19 +38,19 @@ echo "AIO $testdir/aio.bdev aio0 4096" >> $testdir/bdevperf.conf
|
||||
$rootdir/test/bdev/bdevperf/bdevperf -c $testdir/bdevperf.conf -q 128 -o 4096 -w write -t 5 -r /var/tmp/spdk.sock &
|
||||
bdev_perf_pid=$!
|
||||
waitforlisten $bdev_perf_pid
|
||||
$rpc_py enable_bdev_histogram aio0 -e
|
||||
$rpc_py bdev_enable_histogram aio0 -e
|
||||
sleep 2
|
||||
$rpc_py get_bdev_histogram aio0 | $rootdir/scripts/histogram.py
|
||||
$rpc_py enable_bdev_histogram aio0 -d
|
||||
$rpc_py bdev_enable_histogram aio0 -d
|
||||
wait $bdev_perf_pid
|
||||
|
||||
$rootdir/test/bdev/bdevperf/bdevperf -c $testdir/bdevperf.conf -q 128 -o 4096 -w read -t 5 -r /var/tmp/spdk.sock &
|
||||
bdev_perf_pid=$!
|
||||
waitforlisten $bdev_perf_pid
|
||||
$rpc_py enable_bdev_histogram aio0 -e
|
||||
$rpc_py bdev_enable_histogram aio0 -e
|
||||
sleep 2
|
||||
$rpc_py get_bdev_histogram aio0 | $rootdir/scripts/histogram.py
|
||||
$rpc_py enable_bdev_histogram aio0 -d
|
||||
$rpc_py bdev_enable_histogram aio0 -d
|
||||
wait $bdev_perf_pid
|
||||
|
||||
$rootdir/test/bdev/bdevperf/bdevperf -c $testdir/bdevperf.conf -q 128 -o 4096 -w unmap -t 1
|
||||
|
Loading…
Reference in New Issue
Block a user