Print this page
nfssrv: nfsstat reports zeroed data in zone

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/nfs/nfs_srv.c
          +++ new/usr/src/uts/common/fs/nfs/nfs_srv.c
↓ open down ↓ 662 lines elided ↑ open up ↑
 663  663          }
 664  664  
 665  665          /*
 666  666           * Allocate data for pathname.  This will be freed by rfs_rlfree.
 667  667           */
 668  668          rl->rl_data = kmem_alloc(NFS_MAXPATHLEN, KM_SLEEP);
 669  669  
 670  670          if (is_referral) {
 671  671                  char *s;
 672  672                  size_t strsz;
      673 +                kstat_named_t *stat =
      674 +                    exi->exi_ne->ne_globals->svstat[NFS_VERSION];
 673  675  
 674  676                  /* Get an artificial symlink based on a referral */
 675  677                  s = build_symlink(vp, cr, &strsz);
 676      -                global_svstat_ptr[2][NFS_REFERLINKS].value.ui64++;
      678 +                stat[NFS_REFERLINKS].value.ui64++;
 677  679                  DTRACE_PROBE2(nfs2serv__func__referral__reflink,
 678  680                      vnode_t *, vp, char *, s);
 679  681                  if (s == NULL)
 680  682                          error = EINVAL;
 681  683                  else {
 682  684                          error = 0;
 683  685                          (void) strlcpy(rl->rl_data, s, NFS_MAXPATHLEN);
 684  686                          rl->rl_count = (uint32_t)MIN(strsz, NFS_MAXPATHLEN);
 685  687                          kmem_free(s, strsz);
 686  688                  }
↓ open down ↓ 2479 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX