Commit ab6ce828 authored by Maciej Wawryk's avatar Maciej Wawryk Committed by Ben Walker
Browse files

RPC: rename enable_bdev_histogram to bdev_enable_histogram

parent c61e14be
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -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.

+2 −2
Original line number Diff line number Diff line
@@ -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
+12 −11
Original line number Diff line number Diff line
@@ -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 */

+5 −4
Original line number Diff line number Diff line
@@ -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))
+3 −2
Original line number Diff line number Diff line
@@ -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):
Loading