Print this page
re #13613 rb4516 Tunables needs volatile keyword

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/fs/ufs/ufs_inode.c
          +++ new/usr/src/uts/common/fs/ufs/ufs_inode.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) 1983, 2010, Oracle and/or its affiliates. All rights reserved.
       23 + * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
  23   24   * Copyright (c) 2016, 2017 by Delphix. All rights reserved.
  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   * University Copyright- Copyright (c) 1982, 1986, 1988
  31   32   * The Regents of the University of California
  32   33   * All Rights Reserved
↓ open down ↓ 95 lines elided ↑ open up ↑
 128  129  ulong_t ufs_inode_max;  /* hard limit of allowable idle inodes */
 129  130  #define UFS_IDLE_MAX    (16)    /* min # of allowable idle inodes */
 130  131  
 131  132  /*
 132  133   * Tunables for ufs write throttling.
 133  134   * These are validated in ufs_iinit() since improper settings
 134  135   * can lead to filesystem hangs.
 135  136   */
 136  137  #define UFS_HW_DEFAULT  (16 * 1024 * 1024)
 137  138  #define UFS_LW_DEFAULT  (8 * 1024 * 1024)
 138      -int     ufs_HW = UFS_HW_DEFAULT;
 139      -int     ufs_LW = UFS_LW_DEFAULT;
      139 +volatile int    ufs_HW = UFS_HW_DEFAULT;
      140 +volatile int    ufs_LW = UFS_LW_DEFAULT;
 140  141  
 141  142  static void ihinit(void);
 142  143  extern int hash2ints(int, int);
 143  144  
 144  145  static int ufs_iget_internal(struct vfs *, ino_t, struct inode **,
 145  146      struct cred *, int);
 146  147  
 147  148  /* ARGSUSED */
 148  149  static int
 149  150  ufs_inode_kstat_update(kstat_t *ksp, int rw)
↓ open down ↓ 1685 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX