Print this page
NFS Auth per-zone needs better cleanup

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/nfs/nfs_auth.c
          +++ new/usr/src/uts/common/fs/nfs/nfs_auth.c
↓ open down ↓ 272 lines elided ↑ open up ↑
 273  273  /*ARGSUSED*/
 274  274  static void
 275  275  nfsauth_zone_fini(zoneid_t zoneid, void *data)
 276  276  {
 277  277          nfsauth_globals_t *nag = data;
 278  278  
 279  279          list_destroy(&nag->refreshq_queue);
 280  280          cv_destroy(&nag->refreshq_cv);
 281  281          mutex_destroy(&nag->refreshq_lock);
 282  282          mutex_destroy(&nag->mountd_lock);
      283 +        /* Extra cleanup. */
      284 +        if (nag->mountd_dh != NULL)
      285 +                door_ki_rele(nag->mountd_dh);
 283  286          kmem_free(nag, sizeof (*nag));
 284  287  }
 285  288  
 286  289  /*
 287  290   * Convert the address in a netbuf to
 288  291   * a hash index for the auth_cache table.
 289  292   */
 290  293  static int
 291  294  hash(struct netbuf *a)
 292  295  {
↓ open down ↓ 1281 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX