Print this page
Fix NFS design problems re. multiple zone keys
Make NFS server zone-specific data all have the same lifetime
Fix rfs4_clean_state_exi
Fix exi_cache_reclaim
Fix mistakes in zone keys work
More fixes re. exi_zoneid and exi_tree
(danmcd -> Keep some ASSERT()s around for readability.)

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/nfs/nfs4_db.c
          +++ new/usr/src/uts/common/fs/nfs/nfs4_db.c
↓ open down ↓ 744 lines elided ↑ open up ↑
 745  745  
 746  746  /*ARGSUSED*/
 747  747  boolean_t
 748  748  rfs4_cpr_callb(void *arg, int code)
 749  749  {
 750  750          rfs4_bucket_t *buckets, *bp;
 751  751          rfs4_link_t *l;
 752  752          rfs4_client_t *cp;
 753  753          int i;
 754  754  
 755      -        nfs4_srv_t *nsrv4 = zone_getspecific(rfs4_zone_key, curzone);
      755 +        nfs4_srv_t *nsrv4 = nfs4_get_srv();
 756  756          rfs4_table_t *table = nsrv4->rfs4_client_tab;
 757  757  
 758  758          /*
 759  759           * We get called for Suspend and Resume events.
 760  760           * For the suspend case we simply don't care!  Nor do we care if
 761  761           * there are no clients.
 762  762           */
 763  763          if (code == CB_CODE_CPR_CHKPT || table == NULL) {
 764  764                  return (B_TRUE);
 765  765          }
↓ open down ↓ 217 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX