Filesystem device module. More...
#include <fsdev_module.h>
Data Structures | |
struct | __fsdev_module_internal_fields |
Fields that are used by the internal fsdev subsystem. More... | |
Data Fields | |
int(* | module_init )(void) |
Initialization function for the module. | |
void(* | module_fini )(void) |
Finish function for the module. | |
int(* | config_json )(struct spdk_json_write_ctx *w) |
Function called to return a text string representing the module-level JSON RPCs required to regenerate the current configuration. | |
const char * | name |
Name for the module being defined. | |
int(* | get_ctx_size )(void) |
Returns the allocation size required for the backend for uses such as local command structs, local SGL, iovecs, or other user context. | |
struct spdk_fsdev_module::__fsdev_module_internal_fields | internal |
Filesystem device module.
int(* spdk_fsdev_module::config_json) (struct spdk_json_write_ctx *w) |
Function called to return a text string representing the module-level JSON RPCs required to regenerate the current configuration.
This will include module-level configuration options, or methods to construct fsdevs when one RPC may generate multiple fsdevs.
Per-fsdev JSON RPCs (where one "construct" RPC always creates one fsdev) may be implemented here, or by the fsdev's write_config_json function - but not both. Fsdev module implementers may choose which mechanism to use based on the module's design.
void(* spdk_fsdev_module::module_fini) (void) |
Finish function for the module.
Called by the fsdev library after all fsdevs for all modules have been unregistered. This allows the module to do any final cleanup before the fsdev library finishes operation.
Modules are not required to define this function.
int(* spdk_fsdev_module::module_init) (void) |
Initialization function for the module.
Called by the fsdev library during startup.
Modules are required to define this function.