Print this page
Fix nlm_unexport
*** 90,99 ****
--- 90,100 ----
cv_init(&g->nlm_gc_finish_cv, NULL, CV_DEFAULT, NULL);
mutex_init(&g->clean_lock, NULL, MUTEX_DEFAULT, NULL);
g->lockd_pid = 0;
g->run_status = NLM_ST_DOWN;
+ g->nlm_zoneid = zoneid;
nlm_globals_register(g);
return (g);
}
*** 101,110 ****
--- 102,113 ----
void
lm_zone_fini(zoneid_t zoneid, void *data)
{
struct nlm_globals *g = data;
+ nlm_globals_unregister(g);
+
ASSERT(avl_is_empty(&g->nlm_hosts_tree));
avl_destroy(&g->nlm_hosts_tree);
mod_hash_destroy_idhash(g->nlm_hosts_hash);
ASSERT(g->nlm_gc_thread == NULL);
*** 111,121 ****
mutex_destroy(&g->lock);
cv_destroy(&g->nlm_gc_sched_cv);
cv_destroy(&g->nlm_gc_finish_cv);
mutex_destroy(&g->clean_lock);
- nlm_globals_unregister(g);
kmem_free(g, sizeof (*g));
}
--- 114,123 ----