aboutsummaryrefslogtreecommitdiff
path: root/src/core/init.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/init.c')
-rw-r--r--src/core/init.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/core/init.c b/src/core/init.c
index 66ad9725..0e27e289 100644
--- a/src/core/init.c
+++ b/src/core/init.c
@@ -26,17 +26,24 @@ nni_init_helper(void)
{
int rv;
- if ((rv = nni_random_init()) != 0) {
+ if ((rv = nni_taskq_sys_init()) != 0) {
+ return (rv);
+ }
+ if ((rv = nni_random_sys_init()) != 0) {
+ nni_taskq_sys_fini();
return (rv);
}
if ((rv = nni_mtx_init(&nni_idlock_x)) != 0) {
+ nni_random_sys_fini();
+ nni_taskq_sys_fini();
return (rv);
}
if (((rv = nni_idhash_init(&nni_endpoints_x)) != 0) ||
((rv = nni_idhash_init(&nni_pipes_x)) != 0) ||
((rv = nni_idhash_init(&nni_sockets_x)) != 0)) {
nni_mtx_fini(&nni_idlock_x);
- nni_random_fini();
+ nni_random_sys_fini();
+ nni_taskq_sys_fini();
return (rv);
}
nni_idhash_set_limits(&nni_pipes_x, 1, 0x7fffffff,
@@ -49,7 +56,7 @@ nni_init_helper(void)
nni_endpoints = &nni_endpoints_x;
nni_sockets = &nni_sockets_x;
- nni_tran_init();
+ nni_tran_sys_init();
return (0);
}
@@ -68,7 +75,8 @@ nni_fini(void)
nni_idhash_fini(&nni_pipes_x);
nni_idhash_fini(&nni_sockets_x);
nni_mtx_fini(&nni_idlock_x);
- nni_tran_fini();
- nni_random_fini();
+ nni_tran_sys_fini();
+ nni_random_sys_fini();
+ nni_taskq_sys_fini();
nni_plat_fini();
}