vm_extern.h (8169788f40ced7202f6e584ceb67b47e49dff79c) vm_extern.h (a8c5fef5e6b0f84c80aca77643e10ea081248d3d)
1/*-
2 * Copyright (c) 1992, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

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

25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
1/*-
2 * Copyright (c) 1992, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

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

25 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)vm_extern.h 8.5 (Berkeley) 5/3/95
33 * @(#)vm_extern.h 8.2 (Berkeley) 1/12/94
34 * $Id: vm_extern.h,v 1.24 1996/02/23 18:49:23 peter Exp $
34 */
35
35 */
36
37#ifndef _VM_EXTERN_H_
38#define _VM_EXTERN_H_
39
36struct buf;
40struct buf;
37struct loadavg;
38struct proc;
39struct vmspace;
40struct vmtotal;
41struct mount;
42struct vnode;
43
41struct proc;
42struct vmspace;
43struct vmtotal;
44struct mount;
45struct vnode;
46
44#ifdef KGDB
45void chgkprot __P((caddr_t, int, int));
46#endif
47
48#ifdef KERNEL
47#ifdef KERNEL
48extern int indent;
49
49#ifdef TYPEDEF_FOR_UAP
50#ifdef TYPEDEF_FOR_UAP
50int compat_43_getpagesize __P((struct proc *p, void *, int *));
51int madvise __P((struct proc *, void *, int *));
52int mincore __P((struct proc *, void *, int *));
53int mprotect __P((struct proc *, void *, int *));
54int msync __P((struct proc *, void *, int *));
55int munmap __P((struct proc *, void *, int *));
56int obreak __P((struct proc *, void *, int *));
57int sbrk __P((struct proc *, void *, int *));
58int smmap __P((struct proc *, void *, int *));
59int sstk __P((struct proc *, void *, int *));
60#endif
51int getpagesize __P((struct proc * p, void *, int *));
52int madvise __P((struct proc *, void *, int *));
53int mincore __P((struct proc *, void *, int *));
54int mprotect __P((struct proc *, void *, int *));
55int msync __P((struct proc *, void *, int *));
56int munmap __P((struct proc *, void *, int *));
57int obreak __P((struct proc *, void *, int *));
58int sbrk __P((struct proc *, void *, int *));
59int smmap __P((struct proc *, void *, int *));
60int sstk __P((struct proc *, void *, int *));
61int swapon __P((struct proc *, void *, int *));
61
62
62void assert_wait __P((void *, boolean_t));
63int grow __P((struct proc *, vm_offset_t));
64void iprintf __P((const char *, ...));
65int kernacc __P((caddr_t, int, int));
66vm_offset_t kmem_alloc __P((vm_map_t, vm_size_t));
67vm_offset_t kmem_alloc_pageable __P((vm_map_t, vm_size_t));
68vm_offset_t kmem_alloc_wait __P((vm_map_t, vm_size_t));
69void kmem_free __P((vm_map_t, vm_offset_t, vm_size_t));
70void kmem_free_wakeup __P((vm_map_t, vm_offset_t, vm_size_t));
71void kmem_init __P((vm_offset_t, vm_offset_t));
72vm_offset_t kmem_malloc __P((vm_map_t, vm_size_t, boolean_t));
73vm_map_t kmem_suballoc __P((vm_map_t, vm_offset_t *, vm_offset_t *,
74 vm_size_t, boolean_t));
75void loadav __P((struct loadavg *));
76void munmapfd __P((struct proc *, int));
77int pager_cache __P((vm_object_t, boolean_t));
78void sched __P((void));
79int svm_allocate __P((struct proc *, void *, int *));
80int svm_deallocate __P((struct proc *, void *, int *));
81int svm_inherit __P((struct proc *, void *, int *));
82int svm_protect __P((struct proc *, void *, int *));
83void swapinit __P((void));
84int swapon __P((struct proc *, void *, int *));
85void swapout __P((struct proc *));
86void swapout_threads __P((void));
87int swfree __P((struct proc *, int));
88void swstrategy __P((struct buf *));
89void thread_block __P((void));
90void thread_sleep __P((void *, simple_lock_t, boolean_t));
91void thread_wakeup __P((void *));
92int useracc __P((caddr_t, int, int));
93int vm_allocate __P((vm_map_t,
94 vm_offset_t *, vm_size_t, boolean_t));
95int vm_allocate_with_pager __P((vm_map_t, vm_offset_t *,
96 vm_size_t, boolean_t, vm_pager_t, vm_offset_t, boolean_t));
97int vm_deallocate __P((vm_map_t, vm_offset_t, vm_size_t));
98int vm_fault __P((vm_map_t, vm_offset_t, vm_prot_t, boolean_t));
99void vm_fault_copy_entry __P((vm_map_t,
100 vm_map_t, vm_map_entry_t, vm_map_entry_t));
101void vm_fault_unwire __P((vm_map_t, vm_offset_t, vm_offset_t));
102int vm_fault_wire __P((vm_map_t, vm_offset_t, vm_offset_t));
103int vm_fork __P((struct proc *, struct proc *, int));
104int vm_inherit __P((vm_map_t,
105 vm_offset_t, vm_size_t, vm_inherit_t));
106void vm_init_limits __P((struct proc *));
107void vm_mem_init __P((void));
108int vm_mmap __P((vm_map_t, vm_offset_t *, vm_size_t,
109 vm_prot_t, vm_prot_t, int, caddr_t, vm_offset_t));
110int vm_protect __P((vm_map_t,
111 vm_offset_t, vm_size_t, boolean_t, vm_prot_t));
112void vm_set_page_size __P((void));
113int vm_sysctl __P((int *, u_int, void *, size_t *, void *,
114 size_t, struct proc *));
115void vmmeter __P((void));
116struct vmspace *vmspace_alloc __P((vm_offset_t, vm_offset_t, int));
117struct vmspace *vmspace_fork __P((struct vmspace *));
118void vmspace_free __P((struct vmspace *));
119void vmtotal __P((struct vmtotal *));
120void vnode_pager_setsize __P((struct vnode *, u_long));
121void vnode_pager_umount __P((struct mount *));
122boolean_t vnode_pager_uncache __P((struct vnode *));
123void vslock __P((caddr_t, u_int));
124void vsunlock __P((caddr_t, u_int, int));
125#endif
63#endif
64
65void faultin __P((struct proc *p));
66int grow __P((struct proc *, u_int));
67void iprintf __P((const char *,...));
68int kernacc __P((caddr_t, int, int));
69vm_offset_t kmem_alloc __P((vm_map_t, vm_size_t));
70vm_offset_t kmem_alloc_pageable __P((vm_map_t, vm_size_t));
71vm_offset_t kmem_alloc_wait __P((vm_map_t, vm_size_t));
72void kmem_free __P((vm_map_t, vm_offset_t, vm_size_t));
73void kmem_free_wakeup __P((vm_map_t, vm_offset_t, vm_size_t));
74void kmem_init __P((vm_offset_t, vm_offset_t));
75vm_offset_t kmem_malloc __P((vm_map_t, vm_size_t, boolean_t));
76vm_map_t kmem_suballoc __P((vm_map_t, vm_offset_t *, vm_offset_t *, vm_size_t, boolean_t));
77void munmapfd __P((struct proc *, int));
78int pager_cache __P((vm_object_t, boolean_t));
79int swaponvp __P((struct proc *, struct vnode *, dev_t , u_long));
80void swapout_procs __P((void));
81int useracc __P((caddr_t, int, int));
82int vm_fault __P((vm_map_t, vm_offset_t, vm_prot_t, boolean_t));
83void vm_fault_copy_entry __P((vm_map_t, vm_map_t, vm_map_entry_t, vm_map_entry_t));
84void vm_fault_unwire __P((vm_map_t, vm_offset_t, vm_offset_t));
85int vm_fault_wire __P((vm_map_t, vm_offset_t, vm_offset_t));
86int vm_fork __P((struct proc *, struct proc *));
87void vm_map_print __P((/* db_expr_t */ int, boolean_t, /* db_expr_t */ int, char *));
88int vm_mmap __P((vm_map_t, vm_offset_t *, vm_size_t, vm_prot_t, vm_prot_t, int, caddr_t, vm_ooffset_t));
89vm_offset_t vm_page_alloc_contig __P((vm_offset_t, vm_offset_t, vm_offset_t, vm_offset_t));
90void vm_set_page_size __P((void));
91void vmmeter __P((void));
92struct vmspace *vmspace_alloc __P((vm_offset_t, vm_offset_t, int));
93struct vmspace *vmspace_fork __P((struct vmspace *));
94void vmspace_free __P((struct vmspace *));
95void vnode_pager_setsize __P((struct vnode *, vm_ooffset_t));
96void vnode_pager_umount __P((struct mount *));
97void vnode_pager_uncache __P((struct vnode *));
98void vslock __P((caddr_t, u_int));
99void vsunlock __P((caddr_t, u_int, int));
100void vm_object_print __P((/* db_expr_t */ int, boolean_t, /* db_expr_t */ int,
101 char *));
102void vm_fault_quick __P((caddr_t v, int prot));
103
104#endif /* KERNEL */
105
106#endif /* !_VM_EXTERN_H_ */