Age | Commit message (Collapse) | Author |
|
(bios, CPU, interrupt handlers, pvbus). This splits the pvbus attach
function into two parts: pvbus_identify() to scan the CPUID registers
for supported hypervisors and pvbus_attach() to attach the bus, print
information, and configure the children.
This will be needed for Xen and KVM, as discussed with mikeb@ and sf@
OK mlarkin@
|
|
|
|
ok mlarkin
|
|
|
|
This is a simple driver for the virtual PCI device with only one
purpose: to allocate the interrupt vector and communicate that
to the Hypervisor in case the IDT callback method was not available.
With input from and OK deraadt, mlarkin, reyk, mpi
|
|
This adds support for delivering the combined Xen interrupt
that later fans out into event port specific (device specific)
interrupts via an IDT of a guest system.
The Xen IDT vector is set to be the first of the IPL_NET group
and is implemented the same way LAPIC timer and IPIs are done.
The additional machinery is there to be able to mask it via
standard mechanisms (e.g. splnet).
Discussed with kettenis@, OK mlarkin, reyk
|
|
Its location will be communicated with the Xen hypervisor
that will fill it in with instructions resulting in VMEXIT
events.
Discussed with kettenis@ and deraadt@, with input from and
OK mpi, mlarkin, reyk
|
|
With input from and OK mpi, mlarkin, reyk
|
|
"Intel Architecture Instruction Set Extensions Programming Reference"
|
|
|
|
|
|
diff moves the cpu register init code into its own function which will
soon be called from vmd to reset processor state.
no functional change with this diff.
|
|
just print the feature being used (eg, VMX/EPT).
suggested by and ok deraadt@
|
|
or if vmm0 didn't attach, prevents later panics if we try to use vmm in
such a state.
reported by many on tech/misc
|
|
|
|
|
|
C-states. Set the TMP_ARAT flag for these (which is Intel-specific) such
that acpicpu(4) enables the deeper C-states on these CPUs.
ok deraadt@
|
|
|
|
start_amd64.S.
|
|
input by tobias
|
|
coherent with the rest of the allocations.
While here report the correct errno if an allocation fails.
ok mlarkin@
|
|
or a VM in an iteration, check against NULL.
ok mlarkin@
|
|
Should help with the possible hang when trying to create a VM when
the host is out of memory. It also improves coherency as all the
allocations in vmm(4) are done without sleeping.
ok mlarkin@
|
|
ok mlarkin@
|
|
ok reyk@, mlarkin@
|
|
Should prevent a NULL dereference when initializing VM.
ok mlarkin@
|
|
ok yasuoka@
|
|
for a GPT protective MBR. Better than mangling findopenbsd() to do
the check.
Tested & ok yasuoka@
|
|
test and ok gonzalo
|
|
if the setting mode is failed.
reported and tested by Joe Gidi
|
|
|
|
ok mlarkin@
|
|
last VM is terminated. This allows to remove the explicit "vmm
enable" / "vmm disable" (VMM_IOC_START / VMM_IOC_STOP) ioctls. You'll
have to update kernel and userland for this change, as the kernel ABI
changes.
OK mpi@ mlarkin@
|
|
reported by Stefan Kempf with supplied patch, thanks.
|
|
ok mlarkin
|
|
|
|
Return EAGAIN in this case:
# vmmctl -d
vmmctl: disable VMM command failed (35) - Resource temporarily unavailable
ok mlarkin@
|
|
Currently one MUST do "vmmctl -e" before creating a vm with "vmm -S ...".
Lately this could be done automagically by vmd(8) but the kernel should
not allow things that wont fly.
While here, disable vmm mode in error path if at least one of the CPUs
failed to enable it.
ok mlarkin@
|
|
ok mlarkin@
|
|
and convert all gets() users.
ok deraadt@
|
|
- Add $OpenBSD$ tag,
- constify "struct cfattach",
- Use <uvm/uvm_extern.h> rather than <uvm/uvm.h>, it's enough.
- Keep the "struct vm" private. This allows us to not pull <uvm/uvm_extern.h>
in <macine/vmmvar.h>
- Prefer DPRINTF() for debug macro as dprintf(3) is a standard function name.
- Add vmm_debug and fix VMM_DEBUG build
- Remove unneeded <sys/rwlock.h> from <machine/vmmvar.h>
- Kill whitespaces
ok mlarkin@
|
|
|
|
From Stefan Kempf sn.kempf at t-online.de
|
|
circulated on hackers@, no objections. Disabled by default.
|
|
track type of pmap and various conversion and pte bit manipulation
functions for EPT.
|
|
during locore, information based on this will be returned to guest VMs
issuing cpuid instructions later, under certain circumstances.
|
|
particular don't attempt to calcuate the header checksum using a
size that will cause a crash.
Tested & ok yasuoka@
|
|
changes for vmm.
|
|
|
|
|