Spdk/scripts/rpc/bdev.py
Daniel Verkamp a54e7e584b rpc.py: make 'verbose' a client parameter
Rather than requiring the 'verbose' flag as a parameter to
JSONRPCClient.call(), move it to the JSONRPCClient constructor so that
it can be set once.

This fixes the inconsistency between RPC method wrappers that passed
args.verbose and those that didn't; now, rpc.py -v works reliably for
all methods.

The JSONRPCClient.call() verbose parameter is maintained as well to
allow individual calls to be set to verbose if desired.

Change-Id: Iee385510cc9eb1d2984d3b9982055789dff188c6
Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com>
Reviewed-on: https://review.gerrithub.io/398508
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: <shuhei.matsumoto.xt@hitachi.com>
2018-02-06 08:54:38 -05:00

100 lines
2.4 KiB
Python
Executable File

from client import print_dict, print_array, int_arg
def construct_malloc_bdev(args):
num_blocks = (args.total_size * 1024 * 1024) / args.block_size
params = {'num_blocks': num_blocks, 'block_size': args.block_size}
if args.name:
params['name'] = args.name
print_array(args.client.call(
'construct_malloc_bdev', params))
def construct_null_bdev(args):
num_blocks = (args.total_size * 1024 * 1024) / args.block_size
params = {'name': args.name, 'num_blocks': num_blocks,
'block_size': args.block_size}
print_array(args.client.call(
'construct_null_bdev', params))
def construct_aio_bdev(args):
params = {'name': args.name,
'filename': args.filename}
if args.block_size:
params['block_size'] = args.block_size
print_array(args.client.call(
'construct_aio_bdev', params))
def construct_nvme_bdev(args):
params = {'name': args.name,
'trtype': args.trtype,
'traddr': args.traddr}
if args.adrfam:
params['adrfam'] = args.adrfam
if args.trsvcid:
params['trsvcid'] = args.trsvcid
if args.subnqn:
params['subnqn'] = args.subnqn
args.client.call('construct_nvme_bdev', params)
def construct_rbd_bdev(args):
params = {
'pool_name': args.pool_name,
'rbd_name': args.rbd_name,
'block_size': args.block_size,
}
print_array(args.client.call(
'construct_rbd_bdev', params))
def construct_error_bdev(args):
params = {'base_name': args.base_name}
args.client.call('construct_error_bdev', params)
def construct_pmem_bdev(args):
params = {
'pmem_file': args.pmem_file,
'name': args.name
}
print_array(args.client.call('construct_pmem_bdev', params))
def get_bdevs(args):
params = {}
if args.name:
params['name'] = args.name
print_dict(args.client.call('get_bdevs', params))
def delete_bdev(args):
params = {'name': args.bdev_name}
args.client.call('delete_bdev', params)
def bdev_inject_error(args):
params = {
'name': args.name,
'io_type': args.io_type,
'error_type': args.error_type,
'num': args.num,
}
args.client.call('bdev_inject_error', params)
def apply_firmware(args):
params = {
'filename': args.filename,
'bdev_name': args.bdev_name,
}
print_dict(args.client.call('apply_nvme_firmware', params))