Deleted Added
sdiff udiff text old ( 218773 ) new ( 219808 )
full compact
1/*-
2 * Copyright (c) 1991 Regents of the University of California.
3 * All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * the Systems Programming Group of the University of Utah Computer
7 * Science Department and William Jolitz of UUNET Technologies Inc.
8 *

--- 25 unchanged lines hidden (view full) ---

34 * Jolitz uses a recursive map [a pde points to the page directory] to
35 * map the page tables using the pagetables themselves. This is done to
36 * reduce the impact on kernel virtual memory for lots of sparse address
37 * space, and to reduce the cost of memory to each process.
38 *
39 * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90
40 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91
41 * from: i386 pmap.h,v 1.54 1997/11/20 19:30:35 bde Exp
42 * $FreeBSD: head/sys/ia64/include/pmap.h 218773 2011-02-17 15:36:29Z alc $
43 */
44
45#ifndef _MACHINE_PMAP_H_
46#define _MACHINE_PMAP_H_
47
48#include <sys/queue.h>
49#include <sys/_lock.h>
50#include <sys/_mutex.h>
51#include <machine/atomic.h>
52#include <machine/pte.h>
53
54#ifdef _KERNEL
55
56#ifndef NKPT
57#define NKPT 30 /* initial number of kernel page tables */
58#endif
59#define MAXKPT (PAGE_SIZE/sizeof(vm_offset_t))
60

--- 9 unchanged lines hidden (view full) ---

70struct md_page {
71 int pv_list_count;
72 TAILQ_HEAD(,pv_entry) pv_list;
73};
74
75struct pmap {
76 struct mtx pm_mtx;
77 TAILQ_HEAD(,pv_entry) pm_pvlist; /* list of mappings in pmap */
78 uint32_t pm_rid[5]; /* base RID for pmap */
79 struct pmap_statistics pm_stats; /* pmap statistics */
80};
81
82typedef struct pmap *pmap_t;
83
84#ifdef _KERNEL
85extern struct pmap kernel_pmap_store;
86#define kernel_pmap (&kernel_pmap_store)

--- 57 unchanged lines hidden ---