Print this page
re #13613 rb4516 Tunables needs volatile keyword

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/nfs/nfs3_vfsops.c
          +++ new/usr/src/uts/common/fs/nfs/nfs3_vfsops.c
↓ open down ↓ 12 lines elided ↑ open up ↑
  13   13   * When distributing Covered Code, include this CDDL HEADER in each
  14   14   * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15   * If applicable, add the following below this CDDL HEADER, with the
  16   16   * fields enclosed by brackets "[]" replaced with your own identifying
  17   17   * information: Portions Copyright [yyyy] [name of copyright owner]
  18   18   *
  19   19   * CDDL HEADER END
  20   20   */
  21   21  /*
  22   22   * Copyright (c) 1986, 2010, Oracle and/or its affiliates. All rights reserved.
       23 + * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
  23   24   */
  24   25  
  25   26  /*
  26   27   *      Copyright (c) 1983,1984,1985,1986,1987,1988,1989  AT&T.
  27   28   *      All rights reserved.
  28   29   */
  29   30  
  30   31  #include <sys/param.h>
  31   32  #include <sys/types.h>
  32   33  #include <sys/systm.h>
↓ open down ↓ 960 lines elided ↑ open up ↑
 993  994                  nfs3_free_args(args, fhandle);
 994  995                  kmem_free(args, sizeof (*args));
 995  996          }
 996  997  
 997  998          if (mntzone != NULL)
 998  999                  zone_rele(mntzone);
 999 1000  
1000 1001          return (error);
1001 1002  }
1002 1003  
1003      -static int nfs3_dynamic = 0;    /* global variable to enable dynamic retrans. */
1004      -static ushort_t nfs3_max_threads = 8;   /* max number of active async threads */
1005      -uint_t nfs3_bsize = 32 * 1024;  /* client `block' size */
1006      -static uint_t nfs3_async_clusters = 1;  /* # of reqs from each async queue */
1007      -static uint_t nfs3_cots_timeo = NFS_COTS_TIMEO;
     1004 +volatile int nfs3_dynamic = 0;  /* global variable to enable dynamic retrans. */
     1005 +volatile ushort_t nfs3_max_threads = 8; /* max number of active async threads */
     1006 +volatile uint_t nfs3_bsize = 32 * 1024; /* client `block' size */
     1007 +volatile uint_t nfs3_async_clusters = 1; /* # of reqs from each async queue */
     1008 +volatile uint_t nfs3_cots_timeo = NFS_COTS_TIMEO;
1008 1009  
1009 1010  static int
1010 1011  nfs3rootvp(vnode_t **rtvpp, vfs_t *vfsp, struct servinfo *svp,
1011 1012          int flags, cred_t *cr, zone_t *zone)
1012 1013  {
1013 1014          vnode_t *rtvp;
1014 1015          mntinfo_t *mi;
1015 1016          dev_t nfs_dev;
1016 1017          struct vattr va;
1017 1018          struct FSINFO3args args;
↓ open down ↓ 799 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX