diff options
Diffstat (limited to 'src/core/init.c')
| -rw-r--r-- | src/core/init.c | 18 |
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(); } |
