accel: SPDK_ACCEL_MODULE_REGISTER is now passed the module
Instead of passing each parameter to create a module, just have the user make one and pass it in. This makes it easier to change the module definition later. Change-Id: I3a29f59432a6f0773129d7b210fbc011175b2252 Signed-off-by: Ben Walker <benjamin.walker@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/13909 Reviewed-by: Paul Luse <paul.e.luse@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
This commit is contained in:
parent
c029483193
commit
32ee475a5e
@ -117,16 +117,10 @@ struct spdk_accel_module_if {
|
||||
void spdk_accel_engine_register(struct spdk_accel_engine *accel_engine);
|
||||
void spdk_accel_module_list_add(struct spdk_accel_module_if *accel_module);
|
||||
|
||||
#define SPDK_ACCEL_MODULE_REGISTER(init_fn, fini_fn, config_json, ctx_size_fn) \
|
||||
static struct spdk_accel_module_if init_fn ## _if = { \
|
||||
.module_init = init_fn, \
|
||||
.module_fini = fini_fn, \
|
||||
.write_config_json = config_json, \
|
||||
.get_ctx_size = ctx_size_fn, \
|
||||
}; \
|
||||
__attribute__((constructor)) static void init_fn ## _init(void) \
|
||||
{ \
|
||||
spdk_accel_module_list_add(&init_fn ## _if); \
|
||||
}
|
||||
#define SPDK_ACCEL_MODULE_REGISTER(name, module) \
|
||||
static void __attribute__((constructor)) _spdk_accel_module_register_##name(void) \
|
||||
{ \
|
||||
spdk_accel_module_list_add(module); \
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -1053,5 +1053,11 @@ sw_accel_engine_fini(void *ctxt)
|
||||
|
||||
SPDK_LOG_REGISTER_COMPONENT(accel)
|
||||
|
||||
SPDK_ACCEL_MODULE_REGISTER(sw_accel_engine_init, sw_accel_engine_fini,
|
||||
NULL, sw_accel_engine_get_ctx_size)
|
||||
static struct spdk_accel_module_if g_sw_module = {
|
||||
.module_init = sw_accel_engine_init,
|
||||
.module_fini = sw_accel_engine_fini,
|
||||
.write_config_json = NULL,
|
||||
.get_ctx_size = sw_accel_engine_get_ctx_size
|
||||
};
|
||||
|
||||
SPDK_ACCEL_MODULE_REGISTER(sw, &g_sw_module)
|
||||
|
@ -453,8 +453,13 @@ SPDK_TRACE_REGISTER_FN(dsa_trace, "dsa", TRACE_GROUP_ACCEL_DSA)
|
||||
0, SPDK_TRACE_ARG_TYPE_INT, "count");
|
||||
}
|
||||
|
||||
SPDK_ACCEL_MODULE_REGISTER(accel_engine_dsa_init, accel_engine_dsa_exit,
|
||||
accel_engine_dsa_write_config_json,
|
||||
accel_engine_dsa_get_ctx_size)
|
||||
static struct spdk_accel_module_if g_dsa_module = {
|
||||
.module_init = accel_engine_dsa_init,
|
||||
.module_fini = accel_engine_dsa_exit,
|
||||
.write_config_json = accel_engine_dsa_write_config_json,
|
||||
.get_ctx_size = accel_engine_dsa_get_ctx_size
|
||||
};
|
||||
|
||||
SPDK_ACCEL_MODULE_REGISTER(dsa, &g_dsa_module)
|
||||
|
||||
SPDK_LOG_REGISTER_COMPONENT(accel_dsa)
|
||||
|
@ -389,8 +389,13 @@ SPDK_TRACE_REGISTER_FN(iaa_trace, "iaa", TRACE_GROUP_ACCEL_IAA)
|
||||
OBJECT_NONE, 0, SPDK_TRACE_ARG_TYPE_INT, "count");
|
||||
}
|
||||
|
||||
SPDK_ACCEL_MODULE_REGISTER(iaccel_engine_iaa_init, accel_engine_iaa_exit,
|
||||
accel_engine_iaa_write_config_json,
|
||||
accel_engine_iaa_get_ctx_size)
|
||||
static struct spdk_accel_module_if g_iaa_module = {
|
||||
.module_init = iaccel_engine_iaa_init,
|
||||
.module_fini = accel_engine_iaa_exit,
|
||||
.write_config_json = accel_engine_iaa_write_config_json,
|
||||
.get_ctx_size = accel_engine_iaa_get_ctx_size
|
||||
};
|
||||
|
||||
SPDK_ACCEL_MODULE_REGISTER(iaa, &g_iaa_module)
|
||||
|
||||
SPDK_LOG_REGISTER_COMPONENT(accel_iaa)
|
||||
|
@ -76,8 +76,14 @@ accel_engine_ioat_get_ctx_size(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
SPDK_ACCEL_MODULE_REGISTER(accel_engine_ioat_init, accel_engine_ioat_exit,
|
||||
NULL, accel_engine_ioat_get_ctx_size)
|
||||
static struct spdk_accel_module_if g_ioat_module = {
|
||||
.module_init = accel_engine_ioat_init,
|
||||
.module_fini = accel_engine_ioat_exit,
|
||||
.write_config_json = NULL,
|
||||
.get_ctx_size = accel_engine_ioat_get_ctx_size
|
||||
};
|
||||
|
||||
SPDK_ACCEL_MODULE_REGISTER(ioat, &g_ioat_module)
|
||||
|
||||
static void
|
||||
ioat_done(void *cb_arg)
|
||||
|
Loading…
Reference in New Issue
Block a user