1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-10-18 02:19:39 +00:00

vm: Use vmem_xalloc in kva_alloc

The kernel_arena used in kva_alloc has the qcache disabled. vmem_alloc
will first try to use the qcache before falling back to vmem_xalloc.

Rather than trying to use the qcache in vmem_alloc just call
vmem_xalloc directly.

Reviewed by:	alc, kib, markj
Sponsored by:	Arm Ltd
Differential Revision:	https://reviews.freebsd.org/D42831

(cherry picked from commit 8daee410d2)
This commit is contained in:
Andrew Turner 2023-11-29 12:11:37 +00:00
parent 38ffc3f319
commit c603969fa9

View File

@ -147,7 +147,8 @@ kva_alloc(vm_size_t size)
vm_offset_t addr;
size = round_page(size);
if (vmem_alloc(kernel_arena, size, M_BESTFIT | M_NOWAIT, &addr))
if (vmem_xalloc(kernel_arena, size, 0, 0, 0, VMEM_ADDR_MIN,
VMEM_ADDR_MAX, M_BESTFIT | M_NOWAIT, &addr))
return (0);
return (addr);
@ -167,7 +168,7 @@ kva_free(vm_offset_t addr, vm_size_t size)
{
size = round_page(size);
vmem_free(kernel_arena, addr, size);
vmem_xfree(kernel_arena, addr, size);
}
static vm_page_t