aboutsummaryrefslogtreecommitdiff
path: root/sys/vm/vm_phys.c
diff options
context:
space:
mode:
authorJeff Roberson <jeff@FreeBSD.org>2018-01-12 22:48:23 +0000
committerJeff Roberson <jeff@FreeBSD.org>2018-01-12 22:48:23 +0000
commit3f289c3fcf39b200550e2702068014cdd801d4da (patch)
tree9105f2f717d4e6d5f5dc06d92b4b158e3c831d9e /sys/vm/vm_phys.c
parentfe8be58826d91f5b80b50bac161b727bd4ea9846 (diff)
downloadsrc-3f289c3fcf39b200550e2702068014cdd801d4da.tar.gz
src-3f289c3fcf39b200550e2702068014cdd801d4da.zip
Implement 'domainset', a cpuset based NUMA policy mechanism. This allows
userspace to control NUMA policy administratively and programmatically. Implement domainset based iterators in the page layer. Remove the now legacy numa_* syscalls. Cleanup some header polution created by having seq.h in proc.h. Reviewed by: markj, kib Discussed with: alc Tested by: pho Sponsored by: Netflix, Dell/EMC Isilon Differential Revision: https://reviews.freebsd.org/D13403
Notes
Notes: svn path=/head/; revision=327895
Diffstat (limited to 'sys/vm/vm_phys.c')
-rw-r--r--sys/vm/vm_phys.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/vm/vm_phys.c b/sys/vm/vm_phys.c
index 6c796900fc18..26cfd7a77ae2 100644
--- a/sys/vm/vm_phys.c
+++ b/sys/vm/vm_phys.c
@@ -68,8 +68,6 @@ __FBSDID("$FreeBSD$");
#include <vm/vm_page.h>
#include <vm/vm_phys.h>
-#include <vm/vm_domain.h>
-
_Static_assert(sizeof(long) * NBBY >= VM_PHYSSEG_MAX,
"Too many physsegs.");
@@ -973,7 +971,7 @@ vm_phys_free_contig(vm_page_t m, u_long npages)
* be a power of two.
*/
vm_page_t
-vm_phys_scan_contig(u_long npages, vm_paddr_t low, vm_paddr_t high,
+vm_phys_scan_contig(int domain, u_long npages, vm_paddr_t low, vm_paddr_t high,
u_long alignment, vm_paddr_t boundary, int options)
{
vm_paddr_t pa_end;
@@ -988,6 +986,8 @@ vm_phys_scan_contig(u_long npages, vm_paddr_t low, vm_paddr_t high,
return (NULL);
for (segind = 0; segind < vm_phys_nsegs; segind++) {
seg = &vm_phys_segs[segind];
+ if (seg->domain != domain)
+ continue;
if (seg->start >= high)
break;
if (low >= seg->end)