vmparam.h (274382) | vmparam.h (276439) |
---|---|
1/*- 2 * Copyright (c) 1990 The Regents of the University of California. 3 * All rights reserved. 4 * Copyright (c) 1994 John S. Dyson 5 * All rights reserved. 6 * Copyright (c) 2003 Peter Wemm 7 * All rights reserved. 8 * --- 24 unchanged lines hidden (view full) --- 33 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 34 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 35 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 36 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 37 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 38 * SUCH DAMAGE. 39 * 40 * from: @(#)vmparam.h 5.9 (Berkeley) 5/12/91 | 1/*- 2 * Copyright (c) 1990 The Regents of the University of California. 3 * All rights reserved. 4 * Copyright (c) 1994 John S. Dyson 5 * All rights reserved. 6 * Copyright (c) 2003 Peter Wemm 7 * All rights reserved. 8 * --- 24 unchanged lines hidden (view full) --- 33 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 34 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 35 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 36 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 37 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 38 * SUCH DAMAGE. 39 * 40 * from: @(#)vmparam.h 5.9 (Berkeley) 5/12/91 |
41 * $FreeBSD: head/sys/amd64/include/vmparam.h 274382 2014-11-11 14:59:46Z emaste $ | 41 * $FreeBSD: head/sys/amd64/include/vmparam.h 276439 2014-12-31 00:54:38Z alc $ |
42 */ 43 44 45#ifndef _MACHINE_VMPARAM_H_ 46#define _MACHINE_VMPARAM_H_ 1 47 48/* 49 * Machine dependent constants for AMD64. --- 46 unchanged lines hidden (view full) --- 96 * objects are allocated. 97 */ 98#define VM_NFREEPOOL 3 99#define VM_FREEPOOL_CACHE 2 100#define VM_FREEPOOL_DEFAULT 0 101#define VM_FREEPOOL_DIRECT 1 102 103/* | 42 */ 43 44 45#ifndef _MACHINE_VMPARAM_H_ 46#define _MACHINE_VMPARAM_H_ 1 47 48/* 49 * Machine dependent constants for AMD64. --- 46 unchanged lines hidden (view full) --- 96 * objects are allocated. 97 */ 98#define VM_NFREEPOOL 3 99#define VM_FREEPOOL_CACHE 2 100#define VM_FREEPOOL_DEFAULT 0 101#define VM_FREEPOOL_DIRECT 1 102 103/* |
104 * Create two free page lists: VM_FREELIST_DEFAULT is for physical 105 * pages that are above the largest physical address that is 106 * accessible by ISA DMA and VM_FREELIST_ISADMA is for physical pages 107 * that are below that address. | 104 * Create up to three free page lists: VM_FREELIST_DMA32 is for physical pages 105 * that have physical addresses below 4G but are not accessible by ISA DMA, 106 * and VM_FREELIST_ISADMA is for physical pages that are accessible by ISA 107 * DMA. |
108 */ | 108 */ |
109#define VM_NFREELIST 2 | 109#define VM_NFREELIST 3 |
110#define VM_FREELIST_DEFAULT 0 | 110#define VM_FREELIST_DEFAULT 0 |
111#define VM_FREELIST_ISADMA 1 | 111#define VM_FREELIST_DMA32 1 112#define VM_FREELIST_ISADMA 2 |
112 113/* | 113 114/* |
115 * Create the DMA32 free list only if the number of physical pages above 116 * physical address 4G is at least 16M, which amounts to 64GB of physical 117 * memory. 118 */ 119#define VM_DMA32_NPAGES_THRESHOLD 16777216 120 121/* |
|
114 * An allocation size of 16MB is supported in order to optimize the 115 * use of the direct map by UMA. Specifically, a cache line contains 116 * at most 8 PDEs, collectively mapping 16MB of physical memory. By 117 * reducing the number of distinct 16MB "pages" that are used by UMA, 118 * the physical memory allocator reduces the likelihood of both 2MB 119 * page TLB misses and cache misses caused by 2MB page TLB misses. 120 */ 121#define VM_NFREEORDER 13 --- 99 unchanged lines hidden --- | 122 * An allocation size of 16MB is supported in order to optimize the 123 * use of the direct map by UMA. Specifically, a cache line contains 124 * at most 8 PDEs, collectively mapping 16MB of physical memory. By 125 * reducing the number of distinct 16MB "pages" that are used by UMA, 126 * the physical memory allocator reduces the likelihood of both 2MB 127 * page TLB misses and cache misses caused by 2MB page TLB misses. 128 */ 129#define VM_NFREEORDER 13 --- 99 unchanged lines hidden --- |