Print this page
NEX-5177 backport illumos 6345 remove xhat support
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
6345 remove xhat support
Reviewed by: Dan McDonald <danmcd@omniti.com>
Reviewed by: Garrett D'Amore <garrett@damore.org>
Approved by: Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
NEX-5164 backport illumos 6514 AS_* lock macros simplification
Reviewed by: Kevin Crowe <kevin.crowe@nexenta.com>
6514 AS_* lock macros simplification
Reviewed by: Piotr Jasiukajtis <estibi@me.com>
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Reviewed by: Albert Lee <trisk@omniti.com>
Approved by: Dan McDonald <danmcd@omniti.com>
re #13613 rb4516 Tunables needs volatile keyword

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/vm/seg_spt.c
          +++ new/usr/src/uts/common/vm/seg_spt.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) 1993, 2010, Oracle and/or its affiliates. All rights reserved.
       23 + * Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
  23   24   * Copyright (c) 2015, Joyent, Inc. All rights reserved.
  24   25   * Copyright (c) 2016 by Delphix. All rights reserved.
  25   26   */
  26   27  
  27   28  #include <sys/param.h>
  28   29  #include <sys/user.h>
  29   30  #include <sys/mman.h>
  30   31  #include <sys/kmem.h>
  31   32  #include <sys/sysmacros.h>
  32   33  #include <sys/cmn_err.h>
↓ open down ↓ 30 lines elided ↑ open up ↑
  63   64   * segspt_minfree is the memory left for system after ISM
  64   65   * locked its pages; it is set up to 5% of availrmem in
  65   66   * sptcreate when ISM is created.  ISM should not use more
  66   67   * than ~90% of availrmem; if it does, then the performance
  67   68   * of the system may decrease. Machines with large memories may
  68   69   * be able to use up more memory for ISM so we set the default
  69   70   * segspt_minfree to 5% (which gives ISM max 95% of availrmem.
  70   71   * If somebody wants even more memory for ISM (risking hanging
  71   72   * the system) they can patch the segspt_minfree to smaller number.
  72   73   */
  73      -pgcnt_t segspt_minfree = 0;
       74 +volatile pgcnt_t segspt_minfree = 0;
  74   75  
  75   76  static int segspt_create(struct seg *seg, caddr_t argsp);
  76   77  static int segspt_unmap(struct seg *seg, caddr_t raddr, size_t ssize);
  77   78  static void segspt_free(struct seg *seg);
  78   79  static void segspt_free_pages(struct seg *seg, caddr_t addr, size_t len);
  79   80  static lgrp_mem_policy_info_t *segspt_getpolicy(struct seg *seg, caddr_t addr);
  80   81  
  81   82  static void
  82   83  segspt_badop()
  83   84  {
↓ open down ↓ 3015 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX