vmspace
struct vmspace vmspace;
if (KREAD(kd, (u_long)proc.p_vmspace, &vmspace)) {
proc.p_vmspace = &vmspace;
#define ELF_RTLD_ADDR(vmspace) \
(round_page((vm_offset_t)(vmspace)->vm_daddr + maxdsiz))
struct vmspace *vm = mach->vm;
struct vmspace *vm;
struct vmspace *vm;
typedef struct vmspace os_vmspace_t;
typedef struct vmspace os_vmspace_t;
__elfN(load_section)(struct proc *p, struct vmspace *vmspace, struct vnode *vp,
vm_map_lock(&vmspace->vm_map);
rv = vm_map_insert(&vmspace->vm_map, &count,
vm_map_unlock(&vmspace->vm_map);
vm_map_lock(&vmspace->vm_map);
rv = vm_map_insert(&vmspace->vm_map, &count,
vm_map_unlock(&vmspace->vm_map);
vm_map_protect(&vmspace->vm_map,
struct vmspace *vmspace = p->p_vmspace;
p, vmspace, imgp->vp,
struct vmspace *vmspace;
vmspace = imgp->proc->p_vmspace;
vmspace,
vmspace->vm_tsize = text_size; /* in bytes */
vmspace->vm_taddr = (caddr_t)(uintptr_t)text_addr;
vmspace->vm_dsize = data_size; /* in bytes */
vmspace->vm_daddr = (caddr_t)(uintptr_t)data_addr;
addr = ELF_RTLD_ADDR(vmspace);
struct vmspace *vmspace, struct vnode *vp,
static struct vmspace vmspace0;
struct vmspace *vm;
vmspace->vm_ssize = sgrowsiz; /* in bytes */
vmspace->vm_maxsaddr = (char *)USRSTACK - maxssiz;
exec_new_vmspace(struct image_params *imgp, struct vmspace *vmcopy)
struct vmspace *vmspace = imgp->proc->p_vmspace;
map = &vmspace->vm_map;
vmspace = imgp->proc->p_vmspace;
pmap_remove_pages(vmspace_pmap(vmspace), stack_addr, USRSTACK);
map = &vmspace->vm_map;
} else if (vmspace_getrefs(vmspace) == 1) {
shmexit(vmspace);
pmap_remove_pages(vmspace_pmap(vmspace),
vmspace = imgp->proc->p_vmspace;
map = &vmspace->vm_map;
error = vm_map_stack(&vmspace->vm_map, &stack_addr, (vm_size_t)maxssiz,
struct vmspace *vm;
struct vmspace *vms = p->p_vmspace;
struct vmspace *vm;
struct vmspace *vm;
shm_delete_mapping(struct vmspace *vm, struct shmmap_state *shmmap_s)
shmexit(struct vmspace *vm)
static int shm_delete_mapping (struct vmspace *vm, struct shmmap_state *);
struct vmspace *vm;
struct vmspace;
void pmap_interlock_wait (struct vmspace *);
static struct vmspace *efi_savevm;
static struct vmspace *efi_vmspace;
ASSYM(VM_PMAP, offsetof(struct vmspace, vm_pmap));
pmap_replacevm(struct proc *p, struct vmspace *newvm, int adjrefs)
struct vmspace *oldvm;
pmap_setlwpvm(struct lwp *lp, struct vmspace *newvm)
struct vmspace *oldvm;
pmap_add_cpu(struct vmspace *vm, int cpuid)
pmap_del_cpu(struct vmspace *vm, int cpuid)
pmap_del_all_cpus(struct vmspace *vm)
pmap_interlock_wait(struct vmspace *vm)
struct vmspace *vm = NULL;
cpu_vmspace_alloc(struct vmspace *vm __unused)
cpu_vmspace_free(struct vmspace *vm __unused)
void pmap_interlock_wait (struct vmspace *);
struct vmspace *vm = curproc->p_vmspace;
struct vmspace *vm = curproc->p_vmspace;
struct vmspace *vm = curproc->p_vmspace;
struct vmspace *vm = curproc->p_vmspace;
struct vmspace *vm = curproc->p_vmspace;
struct vmspace *vm = curproc->p_vmspace;
struct vmspace *vm = curproc->p_vmspace;
struct vmspace *vm = curproc->p_vmspace;
cpu_vmspace_alloc(struct vmspace *vm)
cpu_vmspace_free(struct vmspace *vm)
pmap_replacevm(struct proc *p, struct vmspace *newvm, int adjrefs)
struct vmspace *oldvm;
pmap_setlwpvm(struct lwp *lp, struct vmspace *newvm)
struct vmspace *oldvm;
pmap_interlock_wait (struct vmspace *vm)
struct vmspace *vm = curproc->p_vmspace;
ASSYM(VM_PMAP, offsetof(struct vmspace, vm_pmap));
struct vmspace *vm = NULL;
struct vmspace;
int exec_new_vmspace (struct image_params *, struct vmspace *vmres);
int kern_mmap(struct vmspace *, caddr_t addr, size_t len,
struct vmspace;
struct vmspace *lwp_vmspace; /* Inherited from p_vmspace */
struct vmspace *p_vmspace; /* Current address space. */
struct vmspace;
void shmexit(struct vmspace *);
struct vmspace;
void cpu_vmspace_alloc(struct vmspace *);
void cpu_vmspace_free(struct vmspace *);
struct vmspace *vmspace;
struct vmspace *vm;
void pmap_replacevm (struct proc *, struct vmspace *, int);
void pmap_setlwpvm (struct lwp *, struct vmspace *);
void pmap_add_cpu(struct vmspace *vm, int cpuid);
void pmap_del_cpu(struct vmspace *vm, int cpuid);
void pmap_del_all_cpus(struct vmspace *vm);
struct vmspace;
struct vmspace *vmspace_alloc(vm_offset_t, vm_offset_t);
void vmspace_initrefs(struct vmspace *);
int vmspace_getrefs(struct vmspace *);
void vmspace_hold(struct vmspace *);
void vmspace_drop(struct vmspace *);
void vmspace_ref(struct vmspace *);
void vmspace_rel(struct vmspace *);
void vmspace_relexit(struct vmspace *);
struct vmspace *vmspace_fork(struct vmspace *origvm,
void vmspace_exec(struct proc *, struct vmspace *);
struct vmspace;
static void vmspace_terminate(struct vmspace *vm, int final);
static void vmspace_drop_notoken(struct vmspace *vm);
sizeof(struct vmspace),
struct vmspace *vm = obj;
struct vmspace *vm = obj;
vmspace_initrefs(struct vmspace *vm)
struct vmspace *
struct vmspace *vm;
vmspace_getrefs(struct vmspace *vm)
vmspace_hold(struct vmspace *vm)
vmspace_drop(struct vmspace *vm)
struct vmspace *
vmspace_fork(struct vmspace *vm1, struct proc *p2, struct lwp *lp2)
struct vmspace *vm2;
vmspace_drop_notoken(struct vmspace *vm)
vmspace_ref(struct vmspace *vm)
vmspace_rel(struct vmspace *vm)
struct vmspace *vm;
vmspace_exec(struct proc *p, struct vmspace *vmcopy)
struct vmspace *oldvmspace = p->p_vmspace;
struct vmspace *newvmspace;
struct vmspace *oldvmspace = p->p_vmspace;
struct vmspace *newvmspace;
struct vmspace *vms = p->p_vmspace;
vmspace_relexit(struct vmspace *vm)
struct vmspace *vm;
vmspace_terminate(struct vmspace *vm, int final)
vmspace_swap_count(struct vmspace *vm)
vmspace_anonymous_count(struct vmspace *vm)
struct vmspace *vr_vmspace; /* vmspace to fork */
vmspace_pmap(struct vmspace *vmspace)
return &vmspace->vm_pmap;
vmspace_resident_count(struct vmspace *vmspace)
return pmap_resident_count(vmspace_pmap(vmspace));
vm_offset_t vmspace_swap_count (struct vmspace *vmspace);
vm_offset_t vmspace_anonymous_count (struct vmspace *vmspace);
kern_mmap(struct vmspace *vms, caddr_t uaddr, size_t ulen,
struct vmspace *vm;
struct vmspace *vm = p->p_vmspace;
struct vmspace *vm = p->p_vmspace;
KKASSERT(ve->vmspace);
ve->vmspace = vmspace_alloc(VM_MIN_USER_ADDRESS, VM_MAX_USER_ADDRESS);
pmap_pinit2(vmspace_pmap(ve->vmspace));
vmspace_rel(ve->vmspace);
ve->vmspace = NULL; /* safety */
pmap_setlwpvm(lp, ve->vmspace);
error = kern_mmap(ve->vmspace, uap->addr, uap->len,
map = &ve->vmspace->vm_map;
error = vm_map_madvise(&ve->vmspace->vm_map, start, end,
pmap_remove_pages(vmspace_pmap(ve->vmspace),
vm_map_remove(&ve->vmspace->vm_map,
vmspace_rel(ve->vmspace);
ve->vmspace = NULL; /* safety */
KKASSERT(ve->vmspace);
struct vmspace vms;
struct vmspace vmspace;
if (!kread(p->p_vmspace, &vmspace, sizeof(vmspace))) {
map = &vmspace.vm_map;