ACRN v0.3 (Nov 2018)

We are pleased to announce the release of Project ACRN version 0.3.

ACRN is a flexible, lightweight reference hypervisor, built with real-time and safety-criticality in mind, optimized to streamline embedded development through an open source platform. Check out the Introduction to Project ACRN for more information.

All project ACRN source code is maintained in the https://github.com/projectacrn/acrn-hypervisor repository and includes folders for the ACRN hypervisor, the ACRN device model, and documentation. You can either download this source code as a zip or tar.gz file (see the ACRN v0.3 GitHub release page or use Git clone and checkout commands:

git clone https://github.com/projectacrn/acrn-hypervisor
cd acrn-hypervisor
git checkout v0.3

The project’s online technical documentation is also tagged to correspond with a specific release: generated v0.3 documents can be found at https://projectacrn.github.io/0.3/. Documentation for the latest (master) branch is found at https://projectacrn.github.io/latest/.

Version 0.3 new features

  • 866 - Security Interrupt Storm Mitigation
  • 878 - Virtualization HLD
  • 887 - Security xD support
  • 944 - CSME (and subcomponent) Sharing
  • 946 - CS(M)E Mediator Definition
  • 951 - Device CS(M)E support
  • 1122 - Security Enable compiler and linker setting-flags to harden software
  • 1124 - MMU code reshuffle
  • 1179 - RPMB key passing
  • 1180 - vFastboot release version 0.9
  • 1181 - Integrate enabling Crash OS feature as default in VSBL debug Version
  • 1182 - vSBL to support ACPI customization
  • 1213 - IOC Mediator added RTC Timer feature
  • 1230 - fix the %l format given to print API only print 32bit
  • 1231 - VM loader reshuffle
  • 1240 - [APL][IO Mediator] Enable VHOST_NET & VHOST to accelerate guest networking with virtio_net.
  • 1284 - [DeviceModel]Enable NHLT table in DM for audio passthrough
  • 1313 - [APL][IO Mediator] Remove unused netmap/vale in virtio-net
  • 1328 - [APL][IO Mediator] change trace_printk to pr_debug for vhm ioctl
  • 1329 - ioeventfd and irqfd implementation to support vhost on ACRN
  • 1343 - Enable -Werror for ACRN hypervisor
  • 1364 - [APL][IO Mediator] virtio code reshuffle
  • 1369 - allocate more RAM to UOS on MRB.
  • 1401 - IOC mediator reshuffle
  • 1420 - Update contributing doc with Tracked-On requirement for commits
  • 1455 - x2apic support for acrn
  • 1616 - remove unused parameters for acrn-dm
  • 1626 - support x2APIC mode for ACRN guests
  • 1672 - L1TF mitigation
  • 1701 - MISRA C compliance Naming Convention
  • 1711 - msix.c use MMIO read/write APIs to access MMIO registers

Fixed Issues

  • 1209 - specific PCI device failed to passthrough to UOS
  • 1268 - GPU hangs when running GfxBench Car Chase in SOS and UOS.
  • 1270 - SOS and UOS play video but don’t display video animation output on monitor.
  • 1339 - SOS failed to boot with SSD+NVMe boot devices on KBL NUC
  • 1432 - SOS failed boot

Known Issues

677 - SSD Disk ID is not consistent between SOS/UOS
The SSD disk ID in the UOS is not the same as in the SOS when the SSD device is passed-through to the UOS (it should be). The ID is also changing after a reboot (it shouldn’t). Impact: There is no impact to functionality. Workaround: None. The issues will be fixed in the next release.
1319 - SD card pass-through: UOS can’t see SD card after UOS reboot.
SD card could not be found after UOS reboot in pass-through mode. Impact: There is no SD card after UOS reboot. Workaround: None. The issue will be fixed in the next release.
1773 - USB Mediator: Can’t find all devices when multiple usb devices connected[Reproduce rate:60%]
After booting UOS with multiple USB devices plugged in, sometimes there are one or more devices cannot be discovered. The reproduce rate is ~60%. Impact: Cannot use multiple usb devices at same time. Workaround: Plug-out and plug-in the unrecognized device again.
1774 - UOS can’t stop by command: acrnctl stop [vm name] in SOS
After launching UOS in SOS by “acrnctl start” command, UOS VM failed to be stopped by “acrnctl stop” command. Impact: Can’t stop UOS in SOS. Workaround: None. The issue will be fixed in the next release.
1775 - [APL UP2]ACRN debugging tool - acrntrace cannot be used in SOS
There are no acrntrace devices “acrn_trace*” under SOS /dev. Impact: acrntrace cannot be used in SOS. Workaround: None. The issue will be fixed in the next release.
1776 - [APL UP2]ACRN debugging tool - acrnlog cannot be used in SOS
There are no acrnlog devices “acrn_hvlog*” under SOS /dev. Impact: acrnlog cannot be used in SOS. Workaround: None. The issue will be fixed in the next release.
1777 - After UOS plays video for several minutes, the UOS image will be stagnant
After UOS plays video for several minutes, the UOS image will be stagnant. Impact: UOS cannot play video image smoothly all the time. Workaround: None. The issues will be fixed in the next release.
1779 - gfxbench cannot run in SOS or UOS
Failed to run gfxbench in SOS or UOS. Impact: Cannot run gfxbench in SOS or UOS. Workaround: None. The issues will be fixed in the next release.
1780 - Some video formats cannot be played in SOS
There are several formats of videos that cannot be played in SOS: H265_10bits, VP8, VP9, VP9_10bits, H265.720p. Impact: Cannot play those formats of videos in SOS. Workaround: None. The issues will be fixed in the next release.
1782 - UOS failed to get IP address with the pass-through network card
After network card is pass-through to UOS, it fails to get IP address in UOS. Impact: Cannot use network in UOS. Workaround: None. The issues will be fixed in the next release.
1794 - After SOS boots up, there’s no output on SOS screen
After SOS boots up with both “desktop” and “soft-defined-cockpit” bundles installed or without any, there’s no output on SOS screen. Impact: Cannot access SOS. Workaround: Only install “desktop” bundle, then enable and start weston in Native Clear Linux OS, and then reboot to SOS. The issues will be fixed in the next release.
1795 - [KBL NUC] SOS fails to get IP address
On KBL NUC hardware platform, SOS fails to get IP address after SOS boot. Impact: Cannot use network in SOS. Workaround: None. The issues will be fixed in the next release.
1796 - APL NUC fails to reboot sometimes
After APL NUC boot to SOS, type “reboot” to reboot SOS, it fails to reboot sometimes. Impact: Cannot reboot SOS. Workaround: Power off and boot again. The issues will be fixed in the next release.

Change Log

These commits have been added to the acrn-hypervisor repo since the v0.2 release in Sep 2018 (click on the CommitID link to see details):

  • b6988e13 hv: fix branch addressing syntax warning
  • 053608a5 HV: add px cx data of bxt n3350 SOC
  • 73530055 hv:Replace dynamic memory with static for port io
  • 5a1f2447 hv: ept: set snp control when modify
  • 66f133bf DM: Fix the typo error in checking the /dev/vbs_ipu file
  • ab5572bd doc: explain intr storm monitor params in acrn-dm
  • f65e05c5 hv: fix ‘Start of variable is upper case’
  • d49a6f6f capture acrnd AaaG booting messages to journald
  • c4161c87 dm: uart: fix UOS console output to stdin
  • b5881727 DM: add interrupt storm monitor params in cmdline
  • ad1cbb76 DM: add interface to set intr storm monitor params
  • 1902d725 hv: fix partition mode no console issue.
  • 3cbaf028 HV: Use parameter directly to pass bdf for hcall_assign/deassign_ptdev
  • 605738fc hv: hypercall: remove hcall_set_vm_memory_region
  • b430b00a hv: fix ‘Expression is not Boolean’
  • 121454c4 hv: fix a minor bug of static checks
  • 0800624f hv: vtd: use pre-defined function for bdf calculation
  • 039a1c0f hv: pci: replace function like macro with inline func
  • 36aaaa1c DM NPK: unmap the MMIO in pci_npk_deinit
  • ef974d1a hv:Remove atomic operation to set initial value for ‘created_vcpu’
  • 0fc47b5a hv: fix release build issue
  • a8a1e229 hv:vtd: fix minor bug in domain count
  • 78dd92e4 DM: sos_bootargs: split sos_bootargs into multiple lines
  • 44ce3a66 doc: update HLD Trace/Log
  • 27fffb96 doc: update HLD Power Management
  • b3d21683 doc: update HLD VM Management
  • dfcc06df doc: update HLD Virtio Devices
  • 366042ca hv: fix integer violations
  • 65a2613a IOC mediator: fix wakeup reason issue when UOS resuming
  • a2516ecc fix “Casting operation to a pointer”
  • ad1e2ab6 DM/sos_bootargs: remove unused parameters for graphics
  • ee918f85 HV:debug:profiling Fixed inappropriate condition check
  • 7f57a74f hypercall doc: Sync the comments for each hypercall from .h to .c
  • 99586e32 HV:treewide:rename vm data structure
  • ace4f48c HV:treewide:rename vcpu_arch data structure
  • fa26a166 HV:treewide:rename vcpu data structure
  • 969f7cf0 DM:Check the device file of /dev/vbs_ipu to determine IPU mode
  • 8efd9edb hv: vPCI needs to handle reset IO port CF9 differently
  • d261b4bc doc: update virtio related functions doc comments
  • ea801a16 dm: Remove unused duplicated API dm_gpa2hva
  • 4e540e54 HV: doc: use doxygen-generated API docs in HLD
  • e0fcb70d HV: io: add structure and API docs
  • a4be10f3 hv: mmu: unmap the trusty EPT when destroy_secure_world
  • e8229879 hv: use MMIO read/write APIs to access MMIO registers
  • 313941e8 tools: acrn-manager: remove unsafe api sscanf
  • e24464a0 tools: acrnlog: remove usage of banned APIs
  • 1d96ce5f doc: add doxygen alias for easy reST inclusion
  • d2d0cbc6 hv:doc:use doxygen-generated API docs in HDL for vIRQ
  • cbe03135 hv: revise interfaces description in virq
  • f23606a4 hv: revise interfaces description in vioapic
  • 7c20cb0c hv: revise interfaces description in vpic
  • c41f2860 hv: revise interfaces description in vlapic
  • 46949631 Documentation: add ‘make’ to GSG and expand PATH for sphinx-build
  • 4b3b1155 hv: doc: use doxygen-generated API docs in HLD for vtd
  • 1776d7e7 hv: vtd: add structure and API docs
  • 7dc3e609 doc: hv: add comments to irq APIs for documentation
  • f69dd1c6 HV:doc:use doxygen-generated API docs in HLD
  • 7c3c6ea4 HV:MM:add API docs
  • 17d43fe5 doc: doc: update HLD Emulated Devices
  • bf88e241 DOC: add main vcpu API & data structure into HLD.
  • c8850114 HV: add main vcpu API comments for document
  • 277c9330 doc: fix formatting error in l1tf doc
  • 2c85480c doc: format l1tf.rst
  • d6247ff7 doc: update l1tf.rst line endings setting to unix style
  • eefb06b3 hv: mmu: add 16GB RAM support for uefi platform
  • c36f4d27 doc: hotfix build issue blocked by l1tf.rst
  • 48ae379b hv: LAPIC pass-thru support for partition mode of ACRN
  • ff56b6f6 hv: Add support for leaf 0xb emulation
  • f3aa20a8 hv: self-IPI APIC register in x2APIC mode of guest vLAPIC
  • c85e35d3 hv: Switch APICv from MMIO to MSR for x2APIC mode of guest vLAPIC
  • cf4d1912 hv: Modify vlapic_get_apicid for x2APIC mode of vLAPIC
  • 80b6e627 hv: Add APIs to convert x2APIC MSR accesses to LAPIC MMIO offset
  • e9fe6efd hv: vLAPIC ICR write and destination mask matching for x2APIC
  • 6a4dcce3 hv: APIs for building x2APIC ID and LDR
  • 7ecc521c hv: Modify enable_msr_interception API
  • 64f61961 hv: add missing support to intercept x2APIC MSRs
  • 94dadc1d dm: virtio-input: ignore MSC_TIMESTAMP from guest
  • ed113f57 hv: mmu: remove “##” for MISRA C
  • 541f3713 hv: bug fix: normal world may get trusty world’s pdpt page
  • f1ed6c50 hv: mmu: remove alloc_page() API
  • 0391f84c hv: mmu: replace dynamic memory allocation in memory
  • 9c7c0de0 hv: mmu: add static paging table allocation for EPT
  • dc9d18a8 hv: mmu: add static paging table allocation for hypervisor
  • 74a5eec3 DM: change SOS bootargs console ttyS0 to ttyS2
  • 0307b218 HV: change vuart port (used by SOS) to ttyS2
  • 9029ac4b doc: update Tracked-on in contribute guide
  • a86248ec doc: hide doxygen duplicate definition warnings
  • 3ffa9686 tools: acrn-crashlog: fix potential issues
  • 111f9726 hv: fix integer violations
  • 4c1cb606 hv: Remove the up_count_spinlock and use atomic for up_count
  • b7472063 HV: add size check for shell log buffer usage
  • b048835c HV: fix bug “vmexit” cmd cause HV console hung
  • 0255e627 hv: resolve the negative impacts to UOS MSI/MSI-X remapping
  • c1d2499e hv: enable MSI remapping on vm0
  • 8c398f7d hv: fix issues when msi-x shares same BAR with other data structures
  • 5cbe079e hv: MSI-X Message Address write fix
  • dbe156e9 hv: fix MISRA-c violations in vcpi code
  • 5555a2f8 hv: fix bug in sizing MSI-X Table Base Address Register
  • 51977a6d hv: Don’t check multi-function flag in PCI enumeration
  • e32bc9e3 hv: avoid hardcode cs.limit in set_vcpu_regs()
  • 0cd85749 HV: save the cs limit field for SOS
  • 6993fdb3 DM: set cs_limit from DM side for UOS
  • b12c7b74 tools: acrn-manager: remove usage of banned APIs
  • af760f8d tools: acrn-manager: refine the usage of api ‘snprintf’
  • 5493804c tools: acrnlog: refine the usage of api ‘snprintf’
  • a2383b06 tools: acrntrace: remove unsafe api and return value check for snprintf
  • 2975f9fa hv:Replace dynamic memory with static for sbuf
  • 9e397322 hv: l1tf: sanitize mapping for idle EPT
  • fb68468c HV: flush L1 cache when switching to normal world
  • 34a63365 HV: enable L1 cache flush when VM entry
  • d43d2c92 HV: add CPU capabilities detection for L1TF mitigation
  • 2731628e HV: wrap security related CPU capabilities checking
  • 25c2d4d7 doc: add l1tf document
  • b0cac0e6 Samples:Added the Kernel console parameter in boot.
  • 43f6bdb7 hv: vtd: fix device assign failure for partition mode
  • 9ae79496 doc: fix section heading in device model hld
  • 7df70e0c doc: update HLD Device Model
  • 390cc678 doc: tweak doxygen/known-issues handling
  • 60d0a752 hv: fix integer violations
  • 4d01e60e hv: vtd: remove dynamic allocation for iommu_domain
  • dda08957 hv: vtd: remove dynamic allocation for dmar_drhd_rt
  • f05bfeb9 hv: vtd: remove dynamic page allocation for root&ctx table
  • 1b1338bc snprintf: Remove the %o and %p support
  • 6150c061 dm: bios: update to version 1.0.1
  • 8c7d471c HV: bug fix:possible access to NULL pointer
  • 9ba75c55 dm: mei: fix firmware reset race.
  • 5f41d4a8 dm: mei: check return value of vmei_host_client_to_vmei()
  • b4fbef46 dm: mei: destroy mutex attribute on error path
  • 8abc9317 dm: mei: set addresses in the hbm disconnect reply
  • 6bb3d048 hv: remove deprecated functions declaration
  • a0ace725 DM USB: xHCI: fix process logic of TRB which has zero data length
  • 6266dd01 DM: correct memory allocation size for UOS
  • ac5b46eb doc: update rest of hypervisor HLD sections
  • 97c8c16f doc: fix misspellings in hld docs
  • 569ababd hv: switch vLAPIC mode vlapic_reset
  • 48d8123a devicemodel:nuc:launch_uos.sh: drop a useless clear parameter
  • 62a42d5f devicemodel: Makefile: clean up/refactor some code
  • df5336c9 gitignore: drop some useless entries
  • 7169248b sos_bootargs_release.txt: enable guc firmware loading
  • fdf1a330 sos_bootargs_debug.txt: enable guc firmware loading
  • 8873859a kconfig: optionally check if the ACPI info header is validated
  • 5f6a10f1 kconfig: use defconfig instead of default values in silentoldconfig
  • b9d54f4a kconfig: support board-specific defconfig
  • 8bde372c kconfig: enforce remaking config.mk after oldconfig changes .config
  • c7907a82 kconfig: a faster way to check the availability of python3 package
  • 256108f1 kconfig: add more help messages to config symbols
  • 05bb7aa2 hv: remove deprecated hypercalls
  • bf7b1cf7 doc: update HLD Device passthrough
  • 7c192db1 doc: update HLD VT-d
  • e141150e doc: Fix AcrnGT broken API doc due to kernel upgrade
  • 83dbfe4f hv: implement sharing_mode.c for PCI emulation in sharing mode
  • 7c506ebc hv: implement msix.c for MSI-X remapping
  • dcebdb8e hv: implement msi.c to handle MSI remapping for vm0
  • 6af47f24 hv: vpci: add callback functions to struct vpci
  • 3e54c70d hv: rework the MMIO handler callback hv_mem_io_handler_t arguments
  • ec5b90f1 hv: implement PCI bus scan function
  • 9cc1f57f hv: change function parameters: pci_pdev_read_cfg and pci_pdev_write_cfg
  • 19e1b967 hv: MSI Message Address should be 64 bits
  • 7b4b78c3 hv: minor cleanup for dm/vpci code
  • bc4f82d1 hv: more cleanup for pci.h
  • e24899d9 fix “Recursion in procedure calls found”
  • e8a59f30 checkpatch: fix the line limit back to 120
  • f4f139bf DM: generate random virtual RPMB key
  • dff441a0 hv:Replace dynamic memory with static for pcpu
  • 4afb6666 hv:cleanup vcpu_id compare with phys_cpu_num
  • 3eb45b9b hv:Check pcpu number to avoid overflow
  • 672583a0 hv: Check pcpu number in Hw platform detect
  • 298044d9 hv: Add MAX_PCPU_NUM in Kconfig
  • b686b562 DM: wrap ASSERT/DEASSERT IRQ line with Set/Clear IRQ line
  • e12f88b8 dm: virtio-console: remove unused virtio_console_cfgwrite
  • 7961a5ba HV: Fix some inconsistent comments in vm_description.c
  • 8860af3b dm: fix possible buffer overflow in ‘acrn_load_elf()’
  • dc7df1cd doc: update HLD Virtual Interrupt
  • 1c54734f doc: update HLD Timer section
  • d6523964 Documentation: tweak ‘partition mode’ tutorial
  • b3cb7a53 Fix to kernel hang in smp_call_function
  • cab93c05 HV:Added SBuf support to copy samples generated to guest.
  • 5985c121 HV:Added implementation for PMI handler function
  • a7cbee18 HV:Added support to get VM enter and exit information
  • fc8f9d79 HV:Added support to perform MSR operation on all cpus
  • 1786f622 HV:Added support to setup tool & start/stop profing
  • 898b9c8d HV:Added support to configure PMI and VM switch info
  • df549096 HV:Added support to get phy CPU, VM, tool information
  • 8ba333d2 HV: Added Initial support for SEP/SOCWATCH profiling
  • 3010718d dm: cmdline: remove unused parameters
  • 4261ca22 DM USB: xHCI: refine logic of Disable Slot Command
  • e1e0d304 DM USB: xHCI: refine the USB disconnect logic in DM
  • f799e8fa DM USB: xHCI: fix process logic of LINK type TRB
  • 08a7227f DM USB: xHCI: fix bug in port unassigning function
  • d7008408 DM USB: xHCI: fix issue: crash when plug device during UOS booting
  • 3d94f868 hv: flush cache after update the trampoline code
  • 0166ec4b HV: debug: Check if vUART is configured in partition mode
  • 05834927 HV: Fix boot failure of partition mode
  • 70e13bf8 doc: update interrupt hld section
  • f84547ca doc: move docs to match HLD 0.7 org
  • 9871b343 doc: update I/O emulation section
  • 6dffef12 doc: filter error exit status incorrect
  • d764edbf doc: update GRUB menu image in partition mode doc
  • 61a9ca20 Documentation: Add tutorial about how to use partition mode on UP2
  • bc7b06ae doc: update Memory management HLD
  • 2f8c31f6 tools: acrn-crashlog: update the documents
  • 655132fc dm: virtio: remove unused vbs_kernel_init
  • eb265809 DM: multiboot info address in DM for elf loader is wrong.
  • 80e02c97 DM USB: xHCI: Fix an potential array out of range issue.
  • 84c0c878 DM USB: xHCI: Fix a potential NULL pointer issue.
  • 1568a4c0 hv:Remove deadcode ‘vm_lapic_from_pcpuid’
  • 46d19824 HV:vcpu fix “Pointer param should be declared pointer to const”
  • ea32c34a HV:fix “Pointer param should be declared pointer to const”
  • d79007ae HV:add const to bitmap_test parameter addr
  • 482a4dcc DM: correct the predefine DM option string.
  • 85bec0d0 hv: Move the guest_sw_loader() call from vcpu to vm
  • 4f19b3b8 hv: Prepare the gdt table for VM
  • ad1ef7ba samples: enable pstore via the sos kernel cmdline
  • 6d076caa tools: acrn-crashlog: remove unsafe apis in usercrash
  • 8f7fa50d hv: fix mapping between GSI Num#2 and PIC IRQ #0
  • 96f8becc dm: bios: update vSBL to v1.0
  • 09193c39 hv: x2apic support for acrn
  • 19abb419 launch_uos.sh: make sure cpu offline by retry
  • 241d5a68 HV: fix bug by improving intr delay timer handling
  • 4228c81b DM: compare unsigned numbers to avoid overflow.
  • d2993737 tools: acrnd: Stop all vms when SOS shutdown/reboot
  • 7b06be9e HV: checkpatch: add configurations to customize checkpatch.pl
  • 7195537a dm: virtio-net: replace banned functions
  • 7579678d dm: add const declaration for dm_strto* APIs
  • bd97e5cb dm: rpmb: Support RPMB mode config from launch.sh
  • 107eaa3a HV:fix MACRO value mismatch
  • a853c055 tools: acrnctl: fix: resume default wakeup reason is CBC_WK_RSN_BTN
  • a6677e6e hv: create new file core.c and pci.c
  • 4741fcff hv: pci_priv.h code cleanup
  • a43ff9ce hv: timer: add debug information for add_timer
  • 7ca1a7de dm: launch_uos.sh add virtio_mei mediator
  • 201e5cec dm: mei: enable virtio_mei compilation
  • d4b9bd59 dm: mei: add module initialization
  • f6e6e858 dm: mei: implement vmei_start/stop()
  • 6a1f8242 dm: mei: implement rx flow.
  • 50ecd93b dm: mei: implement tx flow
  • 483a893e dm: mei: implement HBM protocol handler
  • 98c6b7a6 dm: mei: add native io handlers
  • 3abbf10e dm: mei: add me clients enumeration
  • 7cbb3872 dm: mei: add virtio cfgread/cfgwrite handlers.
  • f462601b dm: mei: add reset handlers
  • a632ac3d dm: mei: add client management infrastructure
  • 445f4193 dm: mei: add virtio configuration
  • 0dc7adfb dm: mei: add sysfs read functions
  • b8d53d17 dm: mei: add reference counter functions
  • 6a96878e dm: types: add container_of macro
  • 4e057c32 dm: mei: add guid handling functions
  • d141aebd dm: mei: add mei hbm protocol definitions header.
  • 0cc50b1d dm: remove virtio_heci
  • 39fde060 hv: ept: remove EPT paging table for HPA to GPA
  • 70ddca3a hv: mmu: add pre-assumption for hpa2gpa
  • 49b476bb hv: vm_load: set zeropage just past boot args
  • 9368373f tools: acrn-crashlog: check the pointer after getting sender
  • 2973db78 DM: VMcfg: generated example header
  • c86da003 DM: VMcfg: support --dump options
  • 67d72920 DM: VMcfg: support --vmcfg options
  • 321021eb DM: VMcfg: mrb-env-setup.sh
  • d2ed9955 DM: VMcfg: support VM1 on MRB
  • ae5b32dc DM: VMcfg: build-in vm configurations
  • 646cc8c4 DM: VMcfg: Kconfig & Makefile for VM Configuration
  • 4ce80e5c tools: acrn-manager: fix a potential compiler warning
  • e8c86566 tools: acrn-manager: fix a potential NULL pointer dereference
  • da3b0270 tools: acrnd: Ignore null line reading from timer_list
  • a45d961b tools: acrnd: check wakeup reason first in init_vm
  • acc51877 doc: merge static core with cpu virt
  • e01f4777 doc: HV startup and CPU virtualization sections
  • 8893a8c2 doc: update HLD overview chapter
  • 60b216a4 HV:fixed “Pointer param should be declared pointer to const”
  • 40dbdcde tools: acrn-crashlog: remove unsafe strlen in common
  • f25bc50e tools: acrn-crashlog: update string operation in acrnprobe
  • 6938caa2 tools: acrn-crashlog: refine the configuration structure
  • fe4d503c tools: acrn-crashlog: remove unsafe api sscanf
  • fb029284 tools: acrn-crashlog: remove unsafe api sprintf
  • 5ecf1078 tools: acrn-crashlog: remove unsafe apis from android_events.c
  • 48ce01a5 tools: acrn-crashlog: new api in strutils
  • 6a9a46ac DM USB: xHCI: workaround for Stop Endpoint Command handling
  • ecf0585b DM USB: xHCI: fix incorrect device searching logic
  • 6b2a18a8 DM USB: add support for multi-layers hubs
  • f533a07a DM USB: xHCI: support multiple hubs in single layer
  • 6886d3cd DM USB: xHCI: change port mapping logic for multiple hub support
  • 540ce05f DM USB: introduce function usb_get_native_devinfo
  • e8f7b6fa DM USB: introduce struct usb_devpath and related functions
  • 14bc961f DM USB: xHCI: remove old hub support code.
  • 8b5d357f HV: move default ACPI info to default_acpi_info.h
  • bd042352 hv: fix potential buffer overflow in vpic_set_pinstate()
  • 268a9f14 [REVERTME] dm: script: disable xHCI runtime PM to WA USB role switch hang issue
  • ffcf6298 dm: rpmb: DM customized changes for RPMB mux kernel module
  • 193da971 tools: acrnd: Refine log msg to avoid confusing.
  • 1c7d2f65 vuart: change irq from 4 to 6
  • 6485666a Revert “hv: x2apic support for acrn”
  • 85ececd2 hv:Simplify for-loop when walk through the vcpu
  • 813e3abc doc: Update contrib doc with Tracked-On
  • 30c29015 Documentation: typo in Ubuntu tutorial and additional note
  • fabe6072 hv:Replace dynamic memory with static for microcode
  • de10df26 DM: add MSI and INTR support for i6300esb watchdog
  • 25719db8 HV: move DRHD data to platform acpi info
  • ca65e8c7 HV: refine APIC base address to platform acpi info
  • 8f701b0f HV: move NR_IOAPICS to platform acpi info
  • bf834072 HV: platform acpi info refactor
  • 4ed87f90 Documentation: add note and instructions for Ubuntu 16.04
  • 2b449680 Documentation: minor update to the tutorial about Ubuntu as SOS
  • 21458bdd dm: storage: banned functions replace
  • e1dab512 dm: add string convert API
  • 4620b935 fix “use of single line comments(s) //”
  • 75b03bef dm: add io port 0xF4 writing to force DM exit
  • 9f764264 dm: add elf loader to dm
  • 0e897c0a DM: use acrn_timer api to emulate rtc
  • 8fdea84a DM: use acrn_timer api to emulate wdt
  • 6ffa1aa3 DM: add acrn_timer api for timer emulation
  • d9df6e93 HV: parse seed from ABL
  • a98dd9e3 HV: trusty: set cse_svn when derive dvseed for trusty
  • 102f5a01 hv: fix potential buffer overflow in vioapic.c
  • eb328d78 hv: retain rip if the fault is injected to guest
  • 348e2ba1 hv: x2apic support for acrn
  • a0fb1c4c hypervisor: Makefile: let OBJS target depend on VERSION file
  • c6c1e42b HV:fix ‘missing for discarded return value’ violations
  • 19e0bed5 script: re-enable audio passthru
  • eb97b2f0 tools: acrn-manager: remove assumption of fd num less than 1024
  • f582757d tools: acrn-manager: fix fd leaking
  • dc05ffff dm: uart: fix acrn-dm crash issue
  • e7b63aec doc: add static core partitioning doc
  • 96412ac1 hv: add suffix(U/UL) to come up MISRA-C into include
  • 909d1576 dm: cleanup the cmd options for acrn-dm
  • 2202b7f5 dm: virtio: reject requests that violate the virtio-block spec
  • ba4e72bd dm: virtio: add debugging information in virtio-blk
  • 7101ce87 dm: storage: remove GEOM support
  • b4a7a1ea HV: allow no IRR when pending bit set if no APIC-V
  • 38d5df72 hv:enable APICv-Posted Interrupt
  • a028567b vpic: change assert/deassert method
  • f9a16395 dm: passthru: fix hardcoded nhlt table length
  • 1d725c89 hv:Replace dynamic memory with static for vcpu
  • 7dd35cb7 hv: Fix identifier reuse
  • dbd9ab07 hv: Cleanup: Remove dead code.
  • b1ccde55 hv: Cleanup: set vcpu mode in vcpu_set_regs
  • 29190ed2 dm: add call to set BSP init state for UOS S3 and system reset
  • 113adea0 hv: not start vm automatically when reset vm
  • b454a067 hv: remove the vm loader for UOS in hv.
  • fc575460 dm: update the bzimage loader
  • 96d99954 dm: update the vsbl loader
  • 853b1c74 dm: add API to set vcpu regs of guest
  • 3cfbc004 hv: add hypercall to set vcpu init state
  • 66b53f82 kconfig patch
  • d859182d customize function to generate config.h with proper suffixes
  • 8ccaf3c3 use genld.sh to generate link_ram.ld
  • 203016b4 dm: passthru: correct the name of xdci dsdt write function
  • 7f2b9a1c hv: virq: update apicv irr/rvi before handle vmcs event injection
  • 90eca21d hv: simplify the function init_guest_state
  • a5fc3e5e hv: Add function to set UOS BSP init state
  • 08c13a9e hv: Update SOS BSP to use new API to init BSP state
  • 26627bd1 hv: add function to set AP entry
  • f7b11c83 hv: add function to reset vcpu registers
  • b2dc13d7 dm: virtio: use the correct register size
  • 790d8a5c hv:Remove CONFIG_VM0_DESC
  • 3c575325 dm: passthru: add deinit_msix_table
  • 244bce75 dm: passthru: enable pba emulation for msix
  • 57abc88b script: re-enable PVMMIO ppgtt update optimization for GVT-g
  • 9114fbb3 Revert “DM: Disable plane_restriction on 4.19 kernel”
  • c3ebd6f3 HV: get tss address from per cpu data
  • 0c7e59f0 hv: fix NULL pointer dereference in “hcall_set_vm_memory_regions()”
  • e913f9e6 dm: mevent: add edge triggered events.
  • f649beeb dm: mevent: implement enable/disable functions
  • 018aba94 dm: mevent: remove useless vmname global variable
  • 4f1d3c04 dm: inline functions defined in header must be static
  • 0317cfb2 hv: fix ‘No brackets to then/else’
  • 71927f3c vuart: assert COM1_IRQ based on its pin’s polarity
  • a11a10fa HV:MM:gpa2hpa related error checking fix
  • 041bd594 hv: improve the readability of ept_cap_detect
  • bacfc9b2 dm: fix use of uninitialized variable in monitor.c
  • 6793eb06 dm: fix assertion in pci_irq_reserve
  • e0728f4b DM USB: xHCI: fix a crash issue when usb device is disconnected
  • 2b53acb5 HV:change the return type of sbuf_get and sbuf_put
  • c5f4c510 HV:fix type related violations
  • 723c22fc HV:fix expression is not boolean
  • 25db6b79 IOC Mediator: Replace strtok with strsep
  • 69edccc0 IOC Mediator: Add return value check for snprintf
  • cc89e52d hv: mmu: make page table operation no fault
  • 1e084b08 hv: mmu: invalidate cached translation information for guest
  • 2b24b378 hv: mmu: add some API for guest page mode check
  • 9fd87812 IOC Mediator: fix multi-signal parsing issue
  • b1b3f76d dm: virtio: use strnlen instead of strlen
  • 9bf5aafe script: workarounds for UOS of 4.19-rc kernel
  • b5f77070 dm: vpit: add vPIT support
  • 0359bd0f dm: vpit: add PIT-related header files
  • eff2ac7a hv: Remove vm_list
  • b8e59e16 hv:Replace dynamic memory with static for vm
  • ff3f9bd1 hv: Remove const qualifier for struct vm
  • 5b28b378 hv: Fix for PARTITION_MODE compilation
  • eebccac2 hv: add suffix(U) in vmx.h to come up MISRA-C
  • 8787b65f dm: fix the issue when guest tries to disable memory range access
  • be0cde7d Revert “dm: workaround for DM crash when doing fastboot reboot”
  • b115546b crashlog: deprecate acrnprobe_prepare and update Makefile
  • f3fc857f crashlog: introducing crashlogctl
  • b1a05d17 crashlog: re-write usercrash-wrapper
  • 6981a4df crashlog: do not alter system behavior with watchdog
  • d800baf5 doc: tweak hld intro
  • 1e385441 doc: reorganize HLD docs
  • 8e21d5ee doc: update genrest script for latest kconfiglib
  • 1c0a0570 doc: update genrest script for latest kconfiglib
  • 16575441 dm: vrtc: add memory configuration in RTC CMOS
  • 373e79bb Getting Started Guide: add instructions to disable cbc_* services
  • 76987149 Getting Started Guide: minor clean-up
  • ce961e79 dm: acpi: set SCI_INT polarity to high active
  • 064e5344 vuart: use pulse irq to assert COM1_IRQ
  • 099203c1 ptdev: assert/deassert interrupt according to polarity
  • e49233ba ioapic: set default polarity setting as high active
  • 3b88d3c2 vioapic: add pin_state bitmap to set irq
  • ba68bd41 DM USB: xHCI: fix enumeration error after rebooting
  • 4544d28e hv: fix ‘User name starts with underscore’
  • 390861a0 DM: increase UOS memory size for MRB
  • 39d54c87 EFI: Disable RELOC by default temporary
  • 072e77e7 DM: Disable plane_restriction on 4.19 kernel
  • 5a64af20 DM: Use the pass-through mode for IPU on 4.19 kernel
  • 38099e4b DM: Add the boot option to avoid loading dwc3_pci USB driver
  • c7611471 hv: modify static irq mappings into array of structure
  • 1c0a3d9a hv: Add API to set vcpu register
  • 0e0dbbac hv: Move the strcut acrn_vcpu_regs to public header file
  • 572b59ff doc: fix doxygen error in hypercall.h
  • 6c9bae61 DM USB: xHCI: fix USB hub disconnection issue
  • 0d4a88e6 DM USB: xHCI: change logic of binding libusb to native device
  • 2d00a99a DM USB: xHCI: refine stop endpoint logic
  • adc79137 hv: efi_context refine
  • ba1aa407 hv: add struct acrn_vcpu_regs
  • 843f7721 hv: Change the struct cpu_gp_regs name to acrn_gp_regs
  • b207f1b9 hv: struct seg_desc_vmcs name change
  • 5c923296 hv:clear up the usage of printf data struct
  • 965f8d10 hv: fix irq leak for MSI IRQ
  • 67ff326e hv: retain the timer irq
  • 07e71212 hv:Replace dynamic memory allocation for vuart
  • 7ce0e6a3 hv:Clear up printf related definition
  • ed06b8a7 hv: fix ‘Void procedure used in expression’
  • 9a05fbea HV: remove IRQSTATE_ASSERT/IRQSTATE_DEASSERT/IRQSTATE_PULSE
  • 9df8790f hv: Fix two minor issues in instruction emulation code
  • be0651ad Getting Started Guide: fix highlighting in launch_uos.sh
  • 37014caa Documentation: add pointer to the documentation generation in GSG
  • 7b26b348 Documentation: update list of bundles to be installed in GSG
  • f45c3bd2 Documentation: add instruction to use a specific version of Clear
  • 398ac203 Update acrn_vm_ops.c
  • e6c3ea3b tools: acrn-manager: init vmmngr_head with LIST_HEAD_INITIALIZER
  • 7b0b67df dm: virtio-net: add vhost net support
  • 3fdfaa3d dm: virtio: implement vhost chardev interfaces
  • e3f4e34c dm: virtio: implement vhost_vq_register_eventfd
  • 150ad30b dm: virtio: implement vhost_set_mem_table
  • befbc3e9 dm: virtio: implement vhost_vq interfaces
  • bb34ffe6 dm: virtio: add vhost support
  • 781e7dfb dm: virtio: rename virtio ring structures and feature bits
  • dd6a5fbe HV: Add hypercall to set/clear IRQ line
  • 05ad6d66 hv: drop the macro arguments acting as formal parameter names
  • 74622d7d hv: merge hv_lib.h and hypervisor.h
  • 3178ecea hv: Fix the warning for ACRN release build
  • 6bcfa152 hv: Enable the compiler warning as error for HV
  • 2111fcff hv: vtd: add config for bus limitation when init
  • 6fcaa1ae hv: bug fix in atomic.h
  • 026ae83b hv: include: fix ‘Unused procedure parameter’
  • 68ce114b doc: add tool for verifying installed doc tools
  • c30437de Fix Doxygen comment in hypercall.h header file
  • 56992c73 dm: combine VM creating and ioreq shared page setup
  • 94513ab7 dm: Add vhm ioeventfd and irqfd interfaces
  • a189be26 HV: Add one hcall to set the upcall vector passed from sos_kernel
  • 22869913 HV: Add the definition of VECTOR_HYPERVISOR_CALLBACK_VHM
  • a8e688eb HV: Use the variable to fire VHM interrupt
  • 89ca54ca hv:Fix unused var value on all paths
  • f1cce671 Makefile: fix cross-compiling issues
  • 8787c06d hv: arch: fix ‘Unused procedure parameter’
  • 2908f09f hv: fix ramdump regression
  • 52ee6154 tools: acrnlog: update Makefile
  • 74c4d719 tools: acrnlog: fix several compiler warnings
  • c51e2139 tools: acrntrace: update Makefile
  • 5e0acac4 tools: acrntrace: fix several compiler warnings
  • 1b9a3b3e tools: acrn-manager: update Makefile
  • 227a8c43 tools: acrn-manager: fix warnings before updating Makefile
  • 270a8332 tools: acrnd: bugfix: service lack of prerequisition
  • 5affe53a tools: acrn-crashlog: update Makefile flags
  • 726711e2 tools: acrn-crashlog: fix some compiler warnings
  • 4e17d207 hv: fix ‘Static procedure is not explicitly called in code analyzed’
  • ac9ebc5e update to support v0.2 release
  • 71b047cb hv: fix ‘Switch case not terminated with break’
  • f3758850 dm: virtio_net: remove netmap/vale backend support
  • e0973e48 hv: ioapic: convert some MACROs to inline functions
  • 99ed5469 DM: add a thread to monitor UOS ptdev intr status
  • d123083f HV: add hypercall to monitor UOS PTdev intr status
  • 918403f9 HV: modify code for intr storm detect & handling
  • de68ee7a version: 0.3-unstable