acrn-hypervisor/hypervisor
Kaige Fu 20c1ad1b3a HV: correct the formatting flag of hypcall_id
hypcall_id has a type of uint64_t and should use 'llx' as
formatting flag instead of '%d'. Otherwise, we will get a
confusing error log when not-allowed hypercall occurs.

Without this patch:
[96707209us][cpu=1][sev=3][seq=2386]:hypercall -2147483548 is only allowed from SOS_VM!

With this patch:
[84613395us][cpu=1][sev=3][seq=2136]:hypercall 0x80000064 is only allowed from SOS_VM!

So, we can figure out which not-allowed hypercall has been triggered more conveniently.

BTW, this patch adds hypcall_id which triggered from non-ring0 into error log.

Tracked-On: #4012
Signed-off-by: Kaige Fu <kaige.fu@intel.com>
2019-11-07 15:01:21 +08:00
..
acpi_parser hv: pci: update "union pci_bdf" 2019-09-25 13:45:39 +08:00
arch/x86 HV: correct the formatting flag of hypcall_id 2019-11-07 15:01:21 +08:00
boot hv: refine 'get_direct_boot_ap_trampoline()' 2019-11-05 15:14:13 +08:00
bsp/ld hv: dmar_parse: remove dynamic memory allocation 2019-05-10 11:33:37 +08:00
common hv: vpci: add PCI BAR re-program address check 2019-10-29 14:49:55 +08:00
debug hv: sched: use get_running_vcpu to replace per_cpu vcpu with cpu sharing 2019-10-23 12:47:08 +08:00
dm hv: mmio: add a lock to protect mmio_node access 2019-11-01 14:44:11 +08:00
hw hv: vpci: remove pci_msi_cap in pci_pdev 2019-10-14 15:09:03 +08:00
include hv: mmu: rename e820 to hv_e820 2019-11-07 08:47:02 +08:00
lib hv:tiny cleanup 2019-09-05 09:58:47 +08:00
pre_build hv:merge static_checks.c 2019-05-14 09:16:33 +08:00
release hv: uart: enable early boot uart 2019-07-26 09:10:06 +08:00
scenarios hv: Update industry scenarios configuration 2019-10-25 15:23:16 +08:00
scripts HV:Acrn-hypvervisor Root Directory Clean-up and create misc/ folder for Acrn daemons, services and tools. 2019-07-29 22:58:24 +08:00
Kconfig
MAINTAINERS
Makefile hv: sched: decouple scheduler from schedule framework 2019-10-25 13:00:21 +08:00
README.rst doc: fix utf-8 punctuation, branding, spelling 2019-03-14 09:13:58 -07:00

README.rst

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/