freebsd-src/lib/libvmmapi
Bojan Novković 08c7dd2fbe libvmmapi: Add support for setting up and configuring guest NUMA domains
This patch reworks libvmmapi to provide support for emulating NUMA
domains in guests.

More specifically, it reworks 'vm_setup_memory' to setup system memory
segments for each guest NUMA domain.

An emulated NUMA domain is described by a 'struct vmdom' in vmmapi.h.
Aside from its size in bytes, each domain can be configured to use a
specific domainset(9) policy and domain mask.
'vm_setup_memory' now takes two additional arguments - an array of
struct vmdoms and the array's size. It then proceeds to set up a memory
segment for each specified domain using the existing memory mapping
scheme. If no domain info is passed, the memory setup falls back to
the original, non-NUMA behaviour.

Differential Revision:	https://reviews.freebsd.org/D44566
Reviewed by:	markj
2025-07-27 18:31:48 +02:00
..
aarch64 libvmmapi: Make vm_raise_msi() a common function 2024-04-10 11:17:56 -04:00
amd64 libvmmapi: Conditionalize compilation of some functions 2024-04-10 11:17:56 -04:00
riscv riscv vmm: add SSTC extension check. 2024-12-17 10:35:44 +00:00
internal.h libvmmapi: Add support for setting up and configuring guest NUMA domains 2025-07-27 18:31:48 +02:00
Makefile vmm: Add support for guest NUMA emulation 2025-07-27 18:31:48 +02:00
Makefile.depend Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
ppt.c libvmmapi: Move PCI passthrough ioctl wrappers into a separate file 2024-04-10 11:17:56 -04:00
vmmapi.c libvmmapi: Add support for setting up and configuring guest NUMA domains 2025-07-27 18:31:48 +02:00
vmmapi.h libvmmapi: Add support for setting up and configuring guest NUMA domains 2025-07-27 18:31:48 +02:00