acrn-hypervisor/hypervisor
Binbin Wu c6d2908f70 hv: vmexit: add handler for vmexit not supported for guest
Acrn doesn't support nested virtualization, so vmx operations should be
undefined opcode for guest.
Current code handle vmx operations with unhandled_vmexit_handler.
According to the spec, if guest execute vmx operation instruction, a #UD
exception should be inject.
This patch inject a #UD exception when guest execute vmx operation instruction.

Tracked-On: #2405
Signed-off-by: Binbin Wu <binbin.wu@intel.com>
Reviewed-by: Jason Chen CJ <jason.cj.chen@intel.com>
Acked-by: Anthony Xu <anthony.xu@intel.com>
2019-01-29 13:13:38 +08:00
..
arch/x86 hv: vmexit: add handler for vmexit not supported for guest 2019-01-29 13:13:38 +08:00
boot hv:Move severl variable declaration for boot code 2019-01-25 21:32:21 +08:00
bsp HV: save efi_ctx into HV to use after init_paging() 2019-01-24 11:59:21 +08:00
common hv: send IPI instead of irq injection to notify vcpu with lapic pt 2019-01-28 19:47:33 +08:00
debug hv:Move several inline APIs from vm.h to *.c 2019-01-29 11:29:59 +08:00
dm hv:Move several inline APIs from vm.h to *.c 2019-01-29 11:29:59 +08:00
hw hv: fix MISRA-C violations in dm/vpci 2019-01-11 14:28:45 +08:00
include hv:Move several inline APIs from vm.h to *.c 2019-01-29 11:29:59 +08:00
lib hv: fix identifier reuse violations in sha256.c 2019-01-16 10:24:49 +08:00
partition HV: move Kconfig IOREQ_POLLING to acrn vm config 2019-01-25 10:24:18 +08:00
release hv: shell & vuart: Change interrupt pin to uint32_t 2019-01-10 23:52:25 +08:00
scripts Makefile: separate PLATFORM into BOARD+FIRMWARE 2018-12-12 13:23:28 +08:00
Kconfig
MAINTAINERS
Makefile HV: refine sos_vm config header 2019-01-25 21:30:49 +08:00
README.rst Documentation: clean-up of isolated README.rst files 2018-11-20 11:09:53 -08:00

ACRN Hypervisor
###############

The open source `Project ACRN`_ defines a device hypervisor reference stack and
an architecture for running multiple software subsystems, managed securely, on
a consolidated system by means of a virtual machine manager. It also defines a
reference framework implementation for virtual device emulation, called the
“ACRN Device Model”.

The ACRN Hypervisor is a Type 1 reference hypervisor stack, running directly on
the bare-metal hardware, and is suitable for a variety of IoT and embedded
device solutions. The ACRN hypervisor addresses the gap that currently exists
between datacenter hypervisors, and hard partitioning hypervisors. The ACRN
hypervisor architecture partitions the system into different functional
domains, with carefully selected guest OS sharing optimizations for IoT and
embedded devices.

You can find out more about Project ACRN on the `Project ACRN documentation`_
website.

.. _`Project ACRN`: https://projectacrn.org
.. _`ACRN Hypervisor`: https://github.com/projectacrn/acrn-hypervisor
.. _`Project ACRN documentation`: https://projectacrn.github.io/