diff options
author | Konstantin Belousov <kib@FreeBSD.org> | 2018-11-25 17:56:49 +0000 |
---|---|---|
committer | Konstantin Belousov <kib@FreeBSD.org> | 2018-11-25 17:56:49 +0000 |
commit | 6e00f3a3119355e389cf502acc32007868121981 (patch) | |
tree | d718944835c46b6f3ff33551b70c32489467851c /sys/vm | |
parent | 2dfc2672319ff82d13a370bd38b35a481f59498a (diff) | |
download | src-6e00f3a3119355e389cf502acc32007868121981.tar.gz src-6e00f3a3119355e389cf502acc32007868121981.zip |
Avoid unneeded check in vmspace_alloc().
All vmspace_alloc() callers know which kind of pmap they allocate.
Reviewed by: alc, markj (previous version)
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D18329
Notes
Notes:
svn path=/head/; revision=340922
Diffstat (limited to 'sys/vm')
-rw-r--r-- | sys/vm/vm_map.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/sys/vm/vm_map.c b/sys/vm/vm_map.c index 058ae1d95cc7..f79ae0ab8e91 100644 --- a/sys/vm/vm_map.c +++ b/sys/vm/vm_map.c @@ -283,12 +283,7 @@ vmspace_alloc(vm_offset_t min, vm_offset_t max, pmap_pinit_t pinit) struct vmspace *vm; vm = uma_zalloc(vmspace_zone, M_WAITOK); - KASSERT(vm->vm_map.pmap == NULL, ("vm_map.pmap must be NULL")); - - if (pinit == NULL) - pinit = &pmap_pinit; - if (!pinit(vmspace_pmap(vm))) { uma_zfree(vmspace_zone, vm); return (NULL); @@ -3424,7 +3419,8 @@ vmspace_fork(struct vmspace *vm1, vm_ooffset_t *fork_charge) old_map = &vm1->vm_map; /* Copy immutable fields of vm1 to vm2. */ - vm2 = vmspace_alloc(vm_map_min(old_map), vm_map_max(old_map), NULL); + vm2 = vmspace_alloc(vm_map_min(old_map), vm_map_max(old_map), + pmap_pinit); if (vm2 == NULL) return (NULL); vm2->vm_taddr = vm1->vm_taddr; @@ -3975,7 +3971,7 @@ vmspace_exec(struct proc *p, vm_offset_t minuser, vm_offset_t maxuser) KASSERT((curthread->td_pflags & TDP_EXECVMSPC) == 0, ("vmspace_exec recursed")); - newvmspace = vmspace_alloc(minuser, maxuser, NULL); + newvmspace = vmspace_alloc(minuser, maxuser, pmap_pinit); if (newvmspace == NULL) return (ENOMEM); newvmspace->vm_swrss = oldvmspace->vm_swrss; |