OpenBSD Journal

vmm(4)/vmd(8) gain support for multi-processor VMs

Contributed by rueda on from the late-reports dept.

Mike Larkin (mlarkin@) committed support for multi-processor virtual machines (i.e. guests):

CVSROOT:	/cvs
Module name:	src
Changes by:	mlarkin@cvs.openbsd.org	2026/09/17 20:35:55

Modified files:
	sys/arch/amd64/amd64: vmm_machdep.c 
	sys/arch/amd64/include: vmmvar.h 
	sys/dev/vmm    : vmm.c 
	usr.sbin/vmctl : main.c vmctl.8 vmctl.c vmctl.h 
	usr.sbin/vmd   : arm64_vm.c fw_cfg.c lapic.c lapic.h parse.y 
	                 vm.c vm.conf.5 vmd.c vmd.h x86_vm.c 

Log message:
vmm(4)/vmd(8): mp plumbing

Implements the sipi/init lapic state machine, mp IPI support and various
other changes required for mp. vmctl and man page changes for new start
and vm.conf options.

tested by dv and me on various guests

ok dv

This represents a huge jump forward in vmm(4)/vmd(8) flexibility and usability.


Credits

Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original deadly.org with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]