acrn-hypervisor/hypervisor
Jason Chen CJ 36863a0b54 modulization: vmx on/off should not use vcpu param
vmx.c should only take care host vmx operations, which should not
contain vcpu reference, so refine vmx on/off APIs, move out use
of vcpu by adding one per cpu vmcs_run pointer.

as now each pcpu only run on one vcpu, so just keep running vmcs
in per cpu vmcs_run pointer is enough.

Changes to be committed:
	modified:   arch/x86/cpu.c
	modified:   arch/x86/init.c
	modified:   arch/x86/pm.c
	modified:   arch/x86/vmcs.c
	modified:   arch/x86/vmx.c
	modified:   include/arch/x86/per_cpu.h
	modified:   include/arch/x86/vmx.h

Tracked-On: #1842
Signed-off-by: Jason Chen CJ <jason.cj.chen@intel.com>
Acked-by: Eddie Dong <eddie.dong@intel.com>
2018-12-18 10:00:56 +08:00
..
arch/x86 modulization: vmx on/off should not use vcpu param 2018-12-18 10:00:56 +08:00
boot hv: enable SMAP in hypervisor 2018-12-14 15:24:26 +08:00
bsp modulization:move out efi dir from hypervisor 2018-12-17 15:46:23 +08:00
common cpu_dead should only run on current pcpu 2018-12-17 14:31:52 +08:00
debug hv: enable SMAP in hypervisor 2018-12-14 15:24:26 +08:00
dm hv: vpci: 2 MISRA-C violation fixes 2018-12-16 14:52:44 +08:00
include modulization: vmx on/off should not use vcpu param 2018-12-18 10:00:56 +08:00
lib hv: refine strnlen_s/strstr_s to only one exit point 2018-12-14 09:42:49 +08:00
partition hv: enable SMAP in hypervisor 2018-12-14 15:24:26 +08:00
release profiling: split profiling_vmexit_handler into two functions 2018-12-14 08:54:30 +08:00
scripts Makefile: separate PLATFORM into BOARD+FIRMWARE 2018-12-12 13:23:28 +08:00
Kconfig HV: config: add Kconfig and defconfigs for sbl & uefi 2018-06-08 17:21:13 +08:00
MAINTAINERS update home page information 2018-05-15 17:19:39 +08:00
Makefile modulization: separate vmx.c into two parts 2018-12-18 10:00:56 +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/