usage: spdk-rpc [options]
SPDK RPC command line interface
positional arguments:
RPC methods
accel_get_opc_assignments
Get list of opcode name to module assignments.
accel_get_module_info (accel_get_engine_info)
Get list of valid module names and their operations.
accel_assign_opc Manually assign an operation to a module.
accel_crypto_key_create
Create encryption key
accel_crypto_key_destroy
Destroy encryption key
accel_crypto_keys_get
Get a list of the crypto keys
accel_set_driver Select accel platform driver to execute operation chains
accel_set_options Set accel framework's options
accel_get_stats Display accel framework's statistics
rpc_get_methods Get list of supported RPC methods
spdk_kill_instance Send signal to instance
framework_start_init
Start initialization of subsystems
framework_wait_init
Block until subsystems have been initialized
framework_monitor_context_switch
Control whether the context switch monitor is enabled
framework_get_reactors
Display list of all reactors
framework_set_scheduler
Select thread scheduler that will be activated and its period
(experimental)
framework_get_scheduler
Display currently set scheduler and its properties.
framework_get_governor
Display currently set governor and the available, set CPU frequencies.
scheduler_set_options
Set scheduler options
framework_disable_cpumask_locks
Disable CPU core lock files.
framework_enable_cpumask_locks
Enable CPU core lock files.
thread_get_stats Display current statistics of all the threads
thread_set_cpumask set the cpumask of the thread whose ID matches to the specified value. The
thread may be migrated to one of the specified CPUs.
thread_get_pollers Display current pollers of all the threads
thread_get_io_channels
Display current IO channels of all the threads
bdev_nvme_start_mdns_discovery
Start mdns based automatic discovery
bdev_nvme_stop_mdns_discovery
Stop automatic mdns discovery
bdev_nvme_get_mdns_discovery_info
Get information about the automatic mdns discovery
bdev_set_options Set options of bdev subsystem
bdev_examine examine a bdev if it exists, or will examine it after it is created
bdev_wait_for_examine
Report when all bdevs have been examined
bdev_crypto_create Add a crypto vbdev
bdev_crypto_delete Delete a crypto disk
bdev_ocf_create Add an OCF block device
bdev_ocf_delete Delete an OCF block device
bdev_ocf_get_stats Get statistics of chosen OCF block device
bdev_ocf_reset_stats
Reset statistics of chosen OCF block device
bdev_ocf_get_bdevs Get list of OCF devices including unregistered ones
bdev_ocf_set_cache_mode
Set cache mode of OCF block device
bdev_ocf_set_seqcutoff
Set sequential cutoff parameters on all cores for the given OCF cache
device
bdev_ocf_flush_start
Start flushing OCF cache device
bdev_ocf_flush_status
Get flush status of OCF cache device
bdev_malloc_create Create a bdev with malloc backend
bdev_malloc_delete Delete a malloc disk
bdev_null_create Add a bdev with null backend
bdev_null_delete Delete a null bdev
bdev_null_resize Resize a null bdev
bdev_aio_create Add a bdev with aio backend
bdev_aio_rescan Rescan a bdev size with aio backend
bdev_aio_delete Delete an aio disk
bdev_uring_create Create a bdev with io_uring backend
bdev_uring_rescan Rescan a bdev size with uring backend
bdev_uring_delete Delete a uring bdev
bdev_xnvme_create Create a bdev with xNVMe backend
bdev_xnvme_delete Delete a xNVMe bdev
bdev_nvme_set_options
Set options for the bdev nvme type. This is startup command.
bdev_nvme_set_hotplug
Set hotplug options for bdev nvme type.
bdev_nvme_attach_controller
Add bdevs with nvme backend
bdev_nvme_get_controllers
Display current NVMe controllers list or required NVMe controller
bdev_nvme_detach_controller
Detach an NVMe controller and delete any associated bdevs
bdev_nvme_reset_controller
Reset an NVMe controller or all NVMe controllers in an NVMe bdev
controller
bdev_nvme_enable_controller
Enable an NVMe controller or all NVMe controllers in an NVMe bdev
controller
bdev_nvme_disable_controller
Disable an NVMe controller or all NVMe controllers in an NVMe bdev
controller
bdev_nvme_start_discovery
Start automatic discovery
bdev_nvme_stop_discovery
Stop automatic discovery
bdev_nvme_get_discovery_info
Get information about the automatic discovery
bdev_nvme_get_io_paths
Display active I/O paths
bdev_nvme_set_preferred_path
Set the preferred I/O path for an NVMe bdev when in multipath mode
bdev_nvme_set_multipath_policy
Set multipath policy of the NVMe bdev
bdev_nvme_get_path_iostat
Display current I/O statistics of all the IO paths of the blockdev. It can
be called when io_path_stat is true.
bdev_nvme_cuse_register
Register CUSE devices on NVMe controller
bdev_nvme_cuse_unregister
Unregister CUSE devices on NVMe controller
bdev_nvme_set_keys Set DH-HMAC-CHAP keys and force (re)authentication on all connected qpairs
bdev_zone_block_create
Create virtual zone namespace device with block device backend
bdev_zone_block_delete
Delete a virtual zone namespace device
bdev_rbd_register_cluster
Add a Rados cluster with ceph rbd backend
bdev_rbd_unregister_cluster
Unregister a Rados cluster object
bdev_rbd_get_clusters_info
Display registered Rados Cluster names and related info
bdev_rbd_create Add a bdev with ceph rbd backend
bdev_rbd_delete Delete a rbd bdev
bdev_rbd_resize Resize a rbd bdev
bdev_delay_create Add a delay bdev on existing bdev
bdev_delay_delete Delete a delay bdev
bdev_delay_update_latency
Update one of the latency values for a given delay bdev
bdev_error_create Add bdev with error injection backend
bdev_error_delete Delete an error bdev
bdev_ec_create Create an erasure-coded bdev
bdev_ec_delete Delete an erasure-coded bdev
bdev_ec_get_bdevs Get information about EC bdevs
bdev_ec_replace_base_bdev
Hot-swap a failed disk in an EC bdev
bdev_ec_start_rebuild
Start background rebuild for all REPLACING slots
bdev_ec_get_rebuild_progress
Get background rebuild progress
bdev_ec_resize Resize an EC bdev in-place after base bdevs grew
bdev_ec_get_wib_status
Get write-intent bitmap status
bdev_ec_get_unmap_status
Get unmap-bitmap status
bdev_ec_set_rebuild_qos
Set QoS parameters for an in-progress rebuild
bdev_ec_stop_rebuild
Stop an in-progress rebuild
bdev_ec_get_scrub_progress
Get startup scrub progress
bdev_iscsi_set_options
Set options for the bdev iscsi type.
bdev_iscsi_create Add bdev with iSCSI initiator backend
bdev_iscsi_delete Delete an iSCSI bdev
bdev_passthru_create
Add a pass through bdev on existing bdev
bdev_passthru_delete
Delete a pass through bdev
bdev_get_bdevs Display current blockdev list or required blockdev
bdev_get_iostat Display current I/O statistics of all the blockdevs or specified blockdev.
bdev_reset_iostat Reset I/O statistics of all the blockdevs or specified blockdev.
bdev_enable_histogram
Enable or disable histogram for specified bdev
bdev_get_histogram Get histogram for specified bdev
bdev_set_qd_sampling_period
Enable or disable tracking of a bdev's queue depth.
bdev_set_qos_limit Set QoS rate limit on a blockdev
bdev_error_inject_error
bdev inject error
bdev_nvme_apply_firmware
Download and commit firmware to NVMe device
bdev_nvme_get_transport_statistics
Get bdev_nvme poll group transport statistics
bdev_nvme_get_controller_health_info
Display health log of the required NVMe bdev controller.
bdev_raid_set_options
Set options for bdev raid.
bdev_raid_get_bdevs
This is used to list all the raid bdev details based on the input category
requested. Category should be one of 'all', 'online', 'configuring' or
'offline'. 'all' means all the raid bdevs whether they are online or
configuring or offline. 'online' is the raid bdev which is registered with
bdev layer. 'configuring' is the raid bdev which does not have full
configuration discovered yet. 'offline' is the raid bdev which is not
registered with bdev as of now and it has encountered any error or user
has requested to offline the raid bdev
bdev_raid_create Create new raid bdev
bdev_raid_delete Delete existing raid bdev
bdev_raid_add_base_bdev
Add base bdev to existing raid bdev
bdev_raid_remove_base_bdev
Remove base bdev from existing raid bdev
bdev_raid_grow_base_bdev
Add a base bdev to a raid bdev, growing the raid's size if there isn't an
empty base bdev slot
bdev_split_create Add given disk name to split config. If bdev with base_name name exist the
split bdevs will be created right away, if not split bdevs will be created
when base bdev became available (during examination process).
bdev_split_delete Delete split config with all created splits.
bdev_ftl_create Add FTL bdev
bdev_ftl_load Load FTL bdev
bdev_ftl_unload Unload FTL bdev
bdev_ftl_delete Delete FTL bdev
bdev_ftl_unmap FTL unmap
bdev_ftl_get_stats print ftl stats
bdev_ftl_get_properties
Print FTL properties
bdev_ftl_set_property
Set FTL property
bdev_nvme_opal_init
take ownership and activate
bdev_nvme_opal_revert
Revert to default factory settings
bdev_opal_create Create opal bdev on specified NVMe controller
bdev_opal_get_info get opal locking range info for this bdev
bdev_opal_delete delete a virtual opal bdev
bdev_opal_new_user Add a user to opal bdev who can set lock state for this bdev
bdev_opal_set_lock_state
set lock state for an opal bdev
bdev_nvme_send_cmd NVMe passthrough cmd.
bdev_nvme_add_error_injection
Add a NVMe command error injection.
bdev_nvme_remove_error_injection
Removes a NVMe command error injection.
bdev_daos_create Create a bdev with DAOS backend
bdev_daos_delete Delete a DAOS disk
bdev_daos_resize Resize a DAOS bdev
fsdev_get_opts Get the fsdev subsystem options
fsdev_set_opts Set the fsdev subsystem options
fsdev_aio_create Create a aio filesystem
fsdev_aio_delete Delete a aio filesystem
iscsi_set_options Set options of iSCSI subsystem
iscsi_set_discovery_auth
Set CHAP authentication for discovery session.
iscsi_create_auth_group
Create authentication group for CHAP authentication.
iscsi_delete_auth_group
Delete an authentication group.
iscsi_auth_group_add_secret
Add a secret to an authentication group.
iscsi_auth_group_remove_secret
Remove a secret from an authentication group.
iscsi_get_auth_groups
Display current authentication group configuration
iscsi_get_portal_groups
Display current portal group configuration
iscsi_get_initiator_groups
Display current initiator group configuration
iscsi_get_target_nodes
Display target nodes
iscsi_enable_histogram
Enable or disable histogram for specified iscsi target
iscsi_get_histogram
Get histogram for specified iscsi target
iscsi_create_target_node
Add a target node
iscsi_target_node_add_lun
Add LUN to the target node
iscsi_target_node_set_auth
Set CHAP authentication for the target node
iscsi_target_node_add_pg_ig_maps
Add PG-IG maps to the target node
iscsi_target_node_remove_pg_ig_maps
Delete PG-IG maps from the target node
iscsi_target_node_set_redirect
Update redirect portal of the public portal group for the target node.
Omit redirect host and port to clear previously set redirect settings.
iscsi_target_node_request_logout
For the target node, request connections whose portal group tag match to
logout, or request all connections if portal group tag is omitted.
iscsi_create_portal_group
Add a portal group
iscsi_start_portal_group
Start listening on portals if it is not started yet.
iscsi_create_initiator_group
Add an initiator group
iscsi_initiator_group_add_initiators
Add initiators to an existing initiator group
iscsi_initiator_group_remove_initiators
Delete initiators from an existing initiator group
iscsi_delete_target_node
Delete a target node
iscsi_delete_portal_group
Delete a portal group
iscsi_delete_initiator_group
Delete an initiator group
iscsi_portal_group_set_auth
Set CHAP authentication for discovery sessions specific for the portal
group
iscsi_get_connections
Display iSCSI connections
iscsi_get_stats Display stat information of iSCSI connections.
iscsi_get_options Display iSCSI global parameters
scsi_get_devices Display SCSI devices
keyring_file_add_key
Add a file-based key to the keyring
keyring_file_remove_key
Remove a file-based key from the keyring
keyring_get_keys Get a list of registered keys
keyring_linux_set_options
Set options of the keyring_linux module
log_set_flag set log flag
log_clear_flag clear log flag
log_get_flags get log flags
log_set_level set log level
log_get_level get log level
log_set_print_level
set log print level
log_get_print_level
get log print level
log_enable_timestamps
Enable or disable timestamps.
bdev_lvol_create_lvstore
Add logical volume store on base bdev
bdev_lvol_rename_lvstore
Change logical volume store name
bdev_lvol_grow_lvstore
Grow the lvstore size to the underlying bdev size
bdev_lvol_create Add a bdev with an logical volume backend
bdev_lvol_snapshot Create a snapshot of an lvol bdev
bdev_lvol_clone Create a clone of an lvol snapshot
bdev_lvol_clone_bdev
Create a clone of a non-lvol bdev
bdev_lvol_set_xattr
Set xattr for lvol bdev
bdev_lvol_get_xattr
Get xattr for lvol bdev
bdev_lvol_rename Change lvol bdev name
bdev_lvol_inflate Make thin provisioned lvol a thick provisioned lvol
bdev_lvol_decouple_parent
Decouple parent of lvol
bdev_lvol_detach_parent
Detach parent of lvol
bdev_lvol_resize Resize existing lvol bdev
bdev_lvol_set_read_only
Mark lvol bdev as read only
bdev_lvol_delete Destroy a logical volume
bdev_lvol_start_shallow_copy
Start a shallow copy of an lvol over a given bdev. The status of the
operation can be obtained with bdev_lvol_check_shallow_copy
bdev_lvol_check_shallow_copy
Get shallow copy status
bdev_lvol_start_deep_copy
Start a deep copy of a lvol over a given bdev. The status of the operation
can be obtained with bdev_lvol_check_deep_copy
bdev_lvol_check_deep_copy
Get deep copy status
bdev_lvol_start_range_shallow_copy
Start a range shallow copy of an lvol over a given bdev. The status of the
operation can be obtained with bdev_lvol_check_shallow_copy
bdev_lvol_register_snapshot_range_checksums
Compute and store snapshot's whole and clusters checksums
bdev_lvol_get_snapshot_range_checksums
Get snapshot's clusters checksums in a specific range
bdev_lvol_set_parent
Set the parent snapshot of a lvol
bdev_lvol_set_parent_bdev
Set the parent external snapshot of a lvol
bdev_lvol_get_fragmap
Get a fragmap for a specific segment of a logical volume using the
provided offset and size.
bdev_lvol_register_snapshot_checksum
Compute and store snapshot's checksum
bdev_lvol_get_snapshot_checksum
Get snapshot's stored checksum
bdev_lvol_stop_snapshot_checksum
Stop the registration of a snapshot's checksum
bdev_lvol_delete_lvstore
Destroy an logical volume store
bdev_lvol_get_lvstores
Display current logical volume store list
bdev_lvol_get_lvols
Display current logical volume list
nbd_start_disk Export a bdev as an nbd disk
nbd_stop_disk Stop an nbd disk
nbd_get_disks Display full or specified nbd device list
ublk_create_target Create spdk ublk target for ublk dev
ublk_destroy_target
Destroy spdk ublk target for ublk dev
ublk_start_disk Export a bdev as a ublk device
ublk_stop_disk Stop a ublk device
ublk_recover_disk Recover ublk device
ublk_get_disks Display full or specified ublk device list
notify_get_types List available notifications that user can subscribe to.
notify_get_notifications
Get notifications
nvmf_set_max_subsystems
Set the maximum number of NVMf target subsystems
nvmf_set_config Set NVMf target config
nvmf_create_transport
Create NVMf transport
nvmf_get_transports
Display nvmf transports or required transport
nvmf_get_subsystems
Display nvmf subsystems or required subsystem
nvmf_create_subsystem
Create an NVMe-oF subsystem
nvmf_delete_subsystem
Delete a nvmf subsystem
nvmf_subsystem_add_listener
Add a listener to an NVMe-oF subsystem
nvmf_subsystem_remove_listener
Remove a listener from an NVMe-oF subsystem
nvmf_subsystem_listener_set_ana_state
Set ANA state of a listener for an NVMe-oF subsystem
nvmf_discovery_add_referral
Add a discovery service referral to an NVMe-oF target
nvmf_discovery_remove_referral
Remove a discovery service referral from an NVMe-oF target
nvmf_discovery_get_referrals
Display discovery subsystem referrals of an NVMe-oF target
nvmf_subsystem_add_ns
Add a namespace to an NVMe-oF subsystem
nvmf_subsystem_set_ns_ana_group
Change ANA group ID of a namespace
nvmf_subsystem_remove_ns
Remove a namespace to an NVMe-oF subsystem
nvmf_ns_add_host Make namespace visible to controllers of host
nvmf_ns_remove_host
Make namespace not visible to controllers of host
nvmf_subsystem_add_host
Add a host to an NVMe-oF subsystem
nvmf_subsystem_remove_host
Remove a host from an NVMe-oF subsystem
nvmf_subsystem_set_keys
Set keys required for a host to connect to a given subsystem
nvmf_subsystem_allow_any_host
Allow any host to connect to the subsystem
nvmf_subsystem_get_controllers
Display controllers of an NVMe-oF subsystem.
nvmf_subsystem_get_qpairs
Display queue pairs of an NVMe-oF subsystem.
nvmf_subsystem_get_listeners
Display listeners of an NVMe-oF subsystem.
nvmf_get_stats Display current statistics for NVMf subsystem
nvmf_set_crdt Set the 3 crdt (Command Retry Delay Time) values for NVMf subsystem. All
values are in units of 100 milliseconds (same as the NVM Express
specification).
nvmf_publish_mdns_prr
Publish pull registration request through mdns
nvmf_stop_mdns_prr Stop publishing pull registration request through mdns
trace_enable_tpoint_group
enable trace on a specific tpoint group
trace_disable_tpoint_group
disable trace on a specific tpoint group
trace_set_tpoint_mask
enable tracepoint mask on a specific tpoint group
trace_clear_tpoint_mask
disable tracepoint mask on a specific tpoint group
trace_get_tpoint_group_mask
get trace point group mask
trace_get_info get name of shared memory file and list of the available trace point
groups
vhost_controller_set_coalescing
Set vhost controller coalescing
virtio_blk_create_transport
Create virtio blk transport
virtio_blk_get_transports
Display virtio-blk transports or requested transport
vhost_create_scsi_controller
Add new vhost controller
vhost_start_scsi_controller
Start vhost scsi controller
vhost_scsi_controller_add_target
Add lun to vhost controller
vhost_scsi_controller_remove_target
Remove target from vhost controller
vhost_create_blk_controller
Add a new vhost block controller
vhost_get_controllers
List all or specific vhost controller(s)
vhost_delete_controller
Delete a vhost controller
bdev_virtio_attach_controller
Attach virtio controller using provided transport type and device type.
This will also create bdevs for any block devices connected to the
controller (for example, SCSI devices for a virtio-scsi controller).
Result is array of added bdevs.
bdev_virtio_scsi_get_devices
List all Virtio-SCSI devices.
bdev_virtio_detach_controller
Remove a Virtio device This will delete all bdevs exposed by this device
bdev_virtio_blk_set_hotplug
Set hotplug options for bdev virtio_blk type.
vmd_enable (enable_vmd)
Enable VMD enumeration
vmd_remove_device Remove a device behind VMD
vmd_rescan Force a rescan of the devices behind VMD
sock_impl_get_options
Get options of socket layer implementation
sock_impl_set_options
Set options of socket layer implementation
sock_set_default_impl
Set the default sock implementation
sock_get_default_impl
Get the default sock implementation name
vfu_tgt_set_base_path
Set socket base path.
vfu_virtio_delete_endpoint
Delete the PCI device via endpoint name.
vfu_virtio_create_blk_endpoint
Create virtio-blk endpoint.
vfu_virtio_scsi_add_target
Attach a block device to SCSI target of PCI endpoint.
vfu_virtio_scsi_remove_target
Remove the specified SCSI target of PCI endpoint.
vfu_virtio_create_scsi_endpoint
Create virtio-scsi endpoint.
vfu_virtio_create_fs_endpoint
Create virtio-fs endpoint.
iobuf_set_options Set iobuf pool options
iobuf_get_stats Display iobuf statistics
spdk_get_version Get SPDK version
save_config Write current (live) configuration of SPDK subsystems and targets to
stdout.
load_config Configure SPDK subsystems and targets using JSON RPC.
save_subsystem_config
Write current (live) configuration of SPDK subsystem to stdout.
load_subsystem_config
Configure SPDK subsystem using JSON RPC.
framework_get_subsystems
Print subsystems array in initialization order. Each subsystem entry
contain (unsorted) array of subsystems it depends on.
framework_get_config
Print subsystem configuration
ioat_scan_accel_module (ioat_scan_accel_engine)
Enable IOAT accel module offload.
compressdev_scan_accel_module
Scan and enable compressdev module and set pmd option.
dsa_scan_accel_module (dsa_scan_accel_engine)
Set config and enable dsa accel module offload.
iaa_scan_accel_module (iaa_scan_accel_engine)
Set config and enable iaa accel module offload.
dpdk_cryptodev_scan_accel_module
Enable dpdk_cryptodev accel module offload.
dpdk_cryptodev_set_driver
Set the DPDK cryptodev driver.
dpdk_cryptodev_get_driver
Get the DPDK cryptodev driver
mlx5_scan_accel_module
Enable mlx5 accel module.
accel_mlx5_dump_stats
Dump accel mlx5 module statistics.
accel_error_inject_error
Inject an error to processing accel operation
env_dpdk_get_mem_stats
write the dpdk memory stats to a file.
framework_get_pci_devices
Get a list of attached PCI devices
options:
-h, --help show this help message and exit
-s SERVER_ADDR RPC domain socket path or IP address
-p PORT RPC port number (if server_addr is IP address)
-t TIMEOUT Timeout as a floating point number expressed in seconds waiting for
response. Default: 60.0
-r CONN_RETRIES Retry connecting to the RPC server N times with 0.2s interval. Default: 0
-v Set verbose mode to INFO
--verbose {DEBUG,INFO,ERROR}
Set verbose level.
--dry-run Display request and exit
--go-client Use Go client
--server Start listening on stdin, parse each line as a regular rpc.py execution
and create a separate connection for each command. Each command's output
ends with either **STATUS=0 if the command succeeded or **STATUS=1 if it
failed. --server is meant to be used in conjunction with bash coproc,
where stdin and stdout are connected to pipes and can be used as a faster
way to send RPC commands. If enabled, rpc.py must be executed without any
other parameters.
--plugin RPC_PLUGIN Module name of plugin with additional RPC commands
Options (11)
| Option | Description | Source |
|---|
-h, --help | show this help message and exit | help |
-s SERVER_ADDR | RPC domain socket path or IP address | help |
-p PORT | RPC port number (if server_addr is IP address) | help |
-t TIMEOUT | Timeout as a floating point number expressed in seconds waiting for response. | help |
-r CONN_RETRIES | Retry connecting to the RPC server N times with 0.2s interval. | help |
-v | Set verbose mode to INFO | help |
--verbose DEBUG | Set verbose level. | help |
--dry-run | Display request and exit | help |
--go-client | Use Go client | help |
--server | Start listening on stdin, parse each line as a regular rpc.py execution and create a separate connection for each command. | help |
--plugin RPC_PLUGIN | Module name of plugin with additional RPC commands | help |
Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.