rpc: Rename passthru related rpcs.

Rename construct_passthru_bdev to bdev_passthru_create
Rename delete_passthru_bdev to bdev_passthru_delete

Change-Id: I8850b78f846acc42cb8530acaf462af867b0bb2e
Signed-off-by: Pawel Kaminski <pawelx.kaminski@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/466520
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Paul Luse <paul.e.luse@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
Pawel Kaminski 2019-08-28 04:56:12 -04:00 committed by Jim Harris
parent 29a9a3089a
commit 7e875f371f
10 changed files with 61 additions and 55 deletions

View File

@ -497,9 +497,9 @@ and demonstrates some other basic features such as the use of per I/O context.
Example commands
`rpc.py construct_passthru_bdev -b aio -p pt`
`rpc.py bdev_passthru_create -b aio -p pt`
`rpc.py delete_passthru_bdev pt`
`rpc.py bdev_passthru_delete pt`
# Pmem {#bdev_config_pmem}

View File

@ -290,7 +290,8 @@ Example response:
"bdev_error_inject_error",
"bdev_error_delete",
"bdev_error_create",
"construct_passthru_bdev",
"bdev_passthru_create",
"bdev_passthru_delete"
"bdev_nvme_apply_firmware",
"delete_nvme_controller",
"bdev_nvme_attach_controller",
@ -2315,7 +2316,7 @@ Example response:
}
~~~
## construct_passthru_bdev {#rpc_construct_passthru_bdev}
## bdev_passthru_create {#rpc_bdev_passthru_create}
Create passthru bdev. This bdev type redirects all IO to it's base bdev. It has no other purpose than being an example
and a starting point in development of new bdev type.
@ -2342,7 +2343,7 @@ Example request:
"name": "Passsthru0"
},
"jsonrpc": "2.0",
"method": "construct_passthru_bdev",
"method": "bdev_passthru_create",
"id": 1
}
~~~
@ -2357,7 +2358,7 @@ Example response:
}
~~~
## delete_passthru_bdev {#rpc_delete_passthru_bdev}
## bdev_passthru_delete {#rpc_bdev_passthru_delete}
Delete passthru bdev.
@ -2377,7 +2378,7 @@ Example request:
"name": "Passsthru0"
},
"jsonrpc": "2.0",
"method": "delete_passthru_bdev",
"method": "bdev_passthru_delete",
"id": 1
}

View File

@ -385,7 +385,7 @@ vbdev_passthru_config_json(struct spdk_json_write_ctx *w)
TAILQ_FOREACH(pt_node, &g_pt_nodes, link) {
spdk_json_write_object_begin(w);
spdk_json_write_named_string(w, "method", "construct_passthru_bdev");
spdk_json_write_named_string(w, "method", "bdev_passthru_create");
spdk_json_write_named_object_begin(w, "params");
spdk_json_write_named_string(w, "base_bdev_name", spdk_bdev_get_name(pt_node->base_bdev));
spdk_json_write_named_string(w, "name", spdk_bdev_get_name(&pt_node->pt_bdev));
@ -687,7 +687,7 @@ vbdev_passthru_register(struct spdk_bdev *bdev)
/* Create the passthru disk from the given bdev and vbdev name. */
int
create_passthru_disk(const char *bdev_name, const char *vbdev_name)
bdev_passthru_create_disk(const char *bdev_name, const char *vbdev_name)
{
struct spdk_bdev *bdev = NULL;
int rc = 0;
@ -713,7 +713,7 @@ create_passthru_disk(const char *bdev_name, const char *vbdev_name)
}
void
delete_passthru_disk(struct spdk_bdev *bdev, spdk_bdev_unregister_cb cb_fn, void *cb_arg)
bdev_passthru_delete_disk(struct spdk_bdev *bdev, spdk_bdev_unregister_cb cb_fn, void *cb_arg)
{
struct bdev_names *name;

View File

@ -46,7 +46,7 @@
* \param vbdev_name Name of the pass through bdev.
* \return 0 on success, other on failure.
*/
int create_passthru_disk(const char *bdev_name, const char *vbdev_name);
int bdev_passthru_create_disk(const char *bdev_name, const char *vbdev_name);
/**
* Delete passthru bdev.
@ -55,7 +55,7 @@ int create_passthru_disk(const char *bdev_name, const char *vbdev_name);
* \param cb_fn Function to call after deletion.
* \param cb_arg Argument to pass to cb_fn.
*/
void delete_passthru_disk(struct spdk_bdev *bdev, spdk_bdev_unregister_cb cb_fn,
void *cb_arg);
void bdev_passthru_delete_disk(struct spdk_bdev *bdev, spdk_bdev_unregister_cb cb_fn,
void *cb_arg);
#endif /* SPDK_VBDEV_PASSTHRU_H */

View File

@ -38,38 +38,38 @@
#include "spdk_internal/log.h"
/* Structure to hold the parameters for this RPC method. */
struct rpc_construct_passthru {
struct rpc_bdev_passthru_create {
char *base_bdev_name;
char *name;
};
/* Free the allocated memory resource after the RPC handling. */
static void
free_rpc_construct_passthru(struct rpc_construct_passthru *r)
free_rpc_bdev_passthru_create(struct rpc_bdev_passthru_create *r)
{
free(r->base_bdev_name);
free(r->name);
}
/* Structure to decode the input parameters for this RPC method. */
static const struct spdk_json_object_decoder rpc_construct_passthru_decoders[] = {
{"base_bdev_name", offsetof(struct rpc_construct_passthru, base_bdev_name), spdk_json_decode_string},
{"name", offsetof(struct rpc_construct_passthru, name), spdk_json_decode_string},
static const struct spdk_json_object_decoder rpc_bdev_passthru_create_decoders[] = {
{"base_bdev_name", offsetof(struct rpc_bdev_passthru_create, base_bdev_name), spdk_json_decode_string},
{"name", offsetof(struct rpc_bdev_passthru_create, name), spdk_json_decode_string},
};
/* Decode the parameters for this RPC method and properly construct the passthru
* device. Error status returned in the failed cases.
*/
static void
spdk_rpc_construct_passthru_bdev(struct spdk_jsonrpc_request *request,
const struct spdk_json_val *params)
spdk_rpc_bdev_passthru_create(struct spdk_jsonrpc_request *request,
const struct spdk_json_val *params)
{
struct rpc_construct_passthru req = {NULL};
struct rpc_bdev_passthru_create req = {NULL};
struct spdk_json_write_ctx *w;
int rc;
if (spdk_json_decode_object(params, rpc_construct_passthru_decoders,
SPDK_COUNTOF(rpc_construct_passthru_decoders),
if (spdk_json_decode_object(params, rpc_bdev_passthru_create_decoders,
SPDK_COUNTOF(rpc_bdev_passthru_create_decoders),
&req)) {
SPDK_DEBUGLOG(SPDK_LOG_VBDEV_PASSTHRU, "spdk_json_decode_object failed\n");
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INTERNAL_ERROR,
@ -77,7 +77,7 @@ spdk_rpc_construct_passthru_bdev(struct spdk_jsonrpc_request *request,
goto cleanup;
}
rc = create_passthru_disk(req.base_bdev_name, req.name);
rc = bdev_passthru_create_disk(req.base_bdev_name, req.name);
if (rc != 0) {
spdk_jsonrpc_send_error_response(request, rc, spdk_strerror(-rc));
goto cleanup;
@ -88,26 +88,27 @@ spdk_rpc_construct_passthru_bdev(struct spdk_jsonrpc_request *request,
spdk_jsonrpc_end_result(request, w);
cleanup:
free_rpc_construct_passthru(&req);
free_rpc_bdev_passthru_create(&req);
}
SPDK_RPC_REGISTER("construct_passthru_bdev", spdk_rpc_construct_passthru_bdev, SPDK_RPC_RUNTIME)
SPDK_RPC_REGISTER("bdev_passthru_create", spdk_rpc_bdev_passthru_create, SPDK_RPC_RUNTIME)
SPDK_RPC_REGISTER_ALIAS_DEPRECATED(bdev_passthru_create, construct_passthru_bdev)
struct rpc_delete_passthru {
struct rpc_bdev_passthru_delete {
char *name;
};
static void
free_rpc_delete_passthru(struct rpc_delete_passthru *req)
free_rpc_bdev_passthru_delete(struct rpc_bdev_passthru_delete *req)
{
free(req->name);
}
static const struct spdk_json_object_decoder rpc_delete_passthru_decoders[] = {
{"name", offsetof(struct rpc_delete_passthru, name), spdk_json_decode_string},
static const struct spdk_json_object_decoder rpc_bdev_passthru_delete_decoders[] = {
{"name", offsetof(struct rpc_bdev_passthru_delete, name), spdk_json_decode_string},
};
static void
_spdk_rpc_delete_passthru_bdev_cb(void *cb_arg, int bdeverrno)
_spdk_rpc_bdev_passthru_delete_cb(void *cb_arg, int bdeverrno)
{
struct spdk_jsonrpc_request *request = cb_arg;
struct spdk_json_write_ctx *w;
@ -118,14 +119,14 @@ _spdk_rpc_delete_passthru_bdev_cb(void *cb_arg, int bdeverrno)
}
static void
spdk_rpc_delete_passthru_bdev(struct spdk_jsonrpc_request *request,
spdk_rpc_bdev_passthru_delete(struct spdk_jsonrpc_request *request,
const struct spdk_json_val *params)
{
struct rpc_delete_passthru req = {NULL};
struct rpc_bdev_passthru_delete req = {NULL};
struct spdk_bdev *bdev;
if (spdk_json_decode_object(params, rpc_delete_passthru_decoders,
SPDK_COUNTOF(rpc_delete_passthru_decoders),
if (spdk_json_decode_object(params, rpc_bdev_passthru_delete_decoders,
SPDK_COUNTOF(rpc_bdev_passthru_delete_decoders),
&req)) {
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INTERNAL_ERROR,
"spdk_json_decode_object failed");
@ -138,9 +139,10 @@ spdk_rpc_delete_passthru_bdev(struct spdk_jsonrpc_request *request,
goto cleanup;
}
delete_passthru_disk(bdev, _spdk_rpc_delete_passthru_bdev_cb, request);
bdev_passthru_delete_disk(bdev, _spdk_rpc_bdev_passthru_delete_cb, request);
cleanup:
free_rpc_delete_passthru(&req);
free_rpc_bdev_passthru_delete(&req);
}
SPDK_RPC_REGISTER("delete_passthru_bdev", spdk_rpc_delete_passthru_bdev, SPDK_RPC_RUNTIME)
SPDK_RPC_REGISTER("bdev_passthru_delete", spdk_rpc_bdev_passthru_delete, SPDK_RPC_RUNTIME)
SPDK_RPC_REGISTER_ALIAS_DEPRECATED(bdev_passthru_delete, delete_passthru_bdev)

View File

@ -551,24 +551,25 @@ if __name__ == "__main__":
p.add_argument('name', help='pmem bdev name')
p.set_defaults(func=bdev_pmem_delete)
def construct_passthru_bdev(args):
print_json(rpc.bdev.construct_passthru_bdev(args.client,
base_bdev_name=args.base_bdev_name,
name=args.name))
def bdev_passthru_create(args):
print_json(rpc.bdev.bdev_passthru_create(args.client,
base_bdev_name=args.base_bdev_name,
name=args.name))
p = subparsers.add_parser('construct_passthru_bdev',
p = subparsers.add_parser('bdev_passthru_create', aliases=['construct_passthru_bdev'],
help='Add a pass through bdev on existing bdev')
p.add_argument('-b', '--base-bdev-name', help="Name of the existing bdev", required=True)
p.add_argument('-p', '--name', help="Name of the pass through bdev", required=True)
p.set_defaults(func=construct_passthru_bdev)
p.set_defaults(func=bdev_passthru_create)
def delete_passthru_bdev(args):
rpc.bdev.delete_passthru_bdev(args.client,
def bdev_passthru_delete(args):
rpc.bdev.bdev_passthru_delete(args.client,
name=args.name)
p = subparsers.add_parser('delete_passthru_bdev', help='Delete a pass through bdev')
p = subparsers.add_parser('bdev_passthru_delete', aliases=['delete_passthru_bdev'],
help='Delete a pass through bdev')
p.add_argument('name', help='pass through bdev name')
p.set_defaults(func=delete_passthru_bdev)
p.set_defaults(func=bdev_passthru_delete)
def bdev_get_bdevs(args):
print_dict(rpc.bdev.bdev_get_bdevs(args.client,

View File

@ -611,7 +611,8 @@ def bdev_pmem_delete(client, name):
return client.call('bdev_pmem_delete', params)
def construct_passthru_bdev(client, base_bdev_name, name):
@deprecated_alias('construct_passthru_bdev')
def bdev_passthru_create(client, base_bdev_name, name):
"""Construct a pass-through block device.
Args:
@ -625,17 +626,18 @@ def construct_passthru_bdev(client, base_bdev_name, name):
'base_bdev_name': base_bdev_name,
'name': name,
}
return client.call('construct_passthru_bdev', params)
return client.call('bdev_passthru_create', params)
def delete_passthru_bdev(client, name):
@deprecated_alias('delete_passthru_bdev')
def bdev_passthru_delete(client, name):
"""Remove pass through bdev from the system.
Args:
name: name of pass through bdev to delete
"""
params = {'name': name}
return client.call('delete_passthru_bdev', params)
return client.call('bdev_passthru_delete', params)
def construct_split_vbdev(client, base_bdev, split_count, split_size_mb=None):

View File

@ -42,7 +42,7 @@ function nbd_function_test() {
nbd_rpc_start_stop_verify $rpc_server "${bdev_list[*]}"
nbd_rpc_data_verify $rpc_server "${bdev_list[*]}" "${nbd_list[*]}"
$rpc_py -s $rpc_server delete_passthru_bdev TestPT
$rpc_py -s $rpc_server bdev_passthru_delete TestPT
killprocess $nbd_pid
trap - SIGINT SIGTERM EXIT

View File

@ -41,7 +41,7 @@ def get_bdev_delete_method(bdev):
'construct_virtio_dev': "remove_virtio_bdev",
'bdev_crypto_create': "bdev_crypto_delete",
'bdev_delay_create': "bdev_delay_delete",
'construct_passthru_bdev': "delete_passthru_bdev",
'bdev_passthru_create': "bdev_passthru_delete",
'bdev_compress_create': 'bdev_compress_delete',
}
destroy_method = None

View File

@ -169,7 +169,7 @@ function create_bdev_subsystem_config() {
tgt_rpc construct_split_vbdev $lvol_store_base_bdev 2
tgt_rpc construct_split_vbdev Malloc0 3
tgt_rpc bdev_malloc_create 8 4096 --name Malloc3
tgt_rpc construct_passthru_bdev -b Malloc3 -p PTBdevFromMalloc3
tgt_rpc bdev_passthru_create -b Malloc3 -p PTBdevFromMalloc3
tgt_rpc bdev_null_create Null0 32 512