Print this page
Fix nlm_unexport

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/klm/klmmod.c
          +++ new/usr/src/uts/common/klm/klmmod.c
↓ open down ↓ 84 lines elided ↑ open up ↑
  85   85          TAILQ_INIT(&g->nlm_idle_hosts);
  86   86          TAILQ_INIT(&g->nlm_slocks);
  87   87  
  88   88          mutex_init(&g->lock, NULL, MUTEX_DEFAULT, NULL);
  89   89          cv_init(&g->nlm_gc_sched_cv, NULL, CV_DEFAULT, NULL);
  90   90          cv_init(&g->nlm_gc_finish_cv, NULL, CV_DEFAULT, NULL);
  91   91          mutex_init(&g->clean_lock, NULL, MUTEX_DEFAULT, NULL);
  92   92  
  93   93          g->lockd_pid = 0;
  94   94          g->run_status = NLM_ST_DOWN;
       95 +        g->nlm_zoneid = zoneid;
  95   96  
  96   97          nlm_globals_register(g);
  97   98          return (g);
  98   99  }
  99  100  
 100  101  /* ARGSUSED */
 101  102  void
 102  103  lm_zone_fini(zoneid_t zoneid, void *data)
 103  104  {
 104  105          struct nlm_globals *g = data;
 105  106  
      107 +        nlm_globals_unregister(g);
      108 +
 106  109          ASSERT(avl_is_empty(&g->nlm_hosts_tree));
 107  110          avl_destroy(&g->nlm_hosts_tree);
 108  111          mod_hash_destroy_idhash(g->nlm_hosts_hash);
 109  112  
 110  113          ASSERT(g->nlm_gc_thread == NULL);
 111  114          mutex_destroy(&g->lock);
 112  115          cv_destroy(&g->nlm_gc_sched_cv);
 113  116          cv_destroy(&g->nlm_gc_finish_cv);
 114  117          mutex_destroy(&g->clean_lock);
 115  118  
 116      -        nlm_globals_unregister(g);
 117  119          kmem_free(g, sizeof (*g));
 118  120  }
 119  121  
 120  122  
 121  123  
 122  124  /*
 123  125   * ****************************************************************
 124  126   * module init, fini, info
 125  127   */
 126  128  int
↓ open down ↓ 407 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX