svn commit: r340922 - head/sys/vm
Konstantin Belousov
kib at FreeBSD.org
Sun Nov 25 17:56:50 UTC 2018
Author: kib
Date: Sun Nov 25 17:56:49 2018
New Revision: 340922
URL: https://svnweb.freebsd.org/changeset/base/340922
Log:
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
Modified:
head/sys/vm/vm_map.c
Modified: head/sys/vm/vm_map.c
==============================================================================
--- head/sys/vm/vm_map.c Sun Nov 25 17:46:37 2018 (r340921)
+++ head/sys/vm/vm_map.c Sun Nov 25 17:56:49 2018 (r340922)
@@ -283,12 +283,7 @@ vmspace_alloc(vm_offset_t min, vm_offset_t max, pmap_p
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_c
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_o
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;
More information about the svn-src-all
mailing list