mirror of
https://github.com/projectacrn/acrn-hypervisor.git
synced 2025-04-29 12:14:13 +00:00
200 lines
8.4 KiB
ReStructuredText
Executable File
200 lines
8.4 KiB
ReStructuredText
Executable File
.. _release_notes_3.3:
|
|
|
|
ACRN v3.3 (Aug 2024)
|
|
####################
|
|
|
|
We are pleased to announce the release of the Project ACRN hypervisor
|
|
version 3.3.
|
|
|
|
ACRN is a flexible, lightweight reference hypervisor that is built with
|
|
real-time and safety-criticality in mind. It is optimized to streamline
|
|
embedded development through an open-source platform. See the
|
|
:ref:`introduction` introduction 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, tools, and
|
|
documentation. You can download this source code either as a zip or
|
|
tar.gz file (see the `ACRN v3.3 GitHub release page
|
|
<https://github.com/projectacrn/acrn-hypervisor/releases/tag/v3.3>`_) or
|
|
use Git ``clone`` and ``checkout`` commands::
|
|
|
|
git clone https://github.com/projectacrn/acrn-hypervisor
|
|
cd acrn-hypervisor
|
|
git checkout v3.3
|
|
|
|
The project's online technical documentation is also tagged to
|
|
correspond with a specific release: generated v3.3 documents can be
|
|
found at https://projectacrn.github.io/3.3/. Documentation for the
|
|
latest development branch is found at https://projectacrn.github.io/latest/.
|
|
|
|
ACRN v3.3 requires Ubuntu 22.04. Follow the instructions in the
|
|
:ref:`gsg` to get started with ACRN.
|
|
|
|
|
|
What's New in v3.3
|
|
******************
|
|
|
|
Generic Main VM Support
|
|
The v3.3 release now supports a new scenario called "Main VM". A "Service VM"
|
|
has two characteristics: (1) it is the default owner of physical resources
|
|
and (2) it can invoke VM management hypercalls. This release adds support
|
|
to configure a VM with only the physical resource ownership characteristic
|
|
and calling this a "Main VM". An example scenario is a pre-launched TEE
|
|
(Trusted Execution Environment) VM and a main REE (Rich Execution Environment)
|
|
VM.
|
|
|
|
Enabling Celadon as User VM
|
|
The acrn hypervisor now supports Celadon as User VM OS. Celadon is an
|
|
open-source project by Intel that provides a reference software stack for Android
|
|
on Intel architecture platforms, aiming to enable developers to optimize and test
|
|
Android on Intel-based devices.
|
|
|
|
Virtual Processor Performance Controls (vHWP)
|
|
The v3.3 release provides virtual HWP feature to a VM so that the VM can check
|
|
hardware performance ranges and adjust performance levels for performance or
|
|
power consumption.
|
|
|
|
Virtual Thermal Monitor and Software Controlled Clock Facilities
|
|
This release is able to virtualize processor thermal sensors and
|
|
controls for thermal management in VMs.
|
|
|
|
Hypervisor Runtime Core PM
|
|
The v3.3 release enhances processor power management in the hypervisor
|
|
at runtime to reduce power consumption when a core is idle.
|
|
|
|
Guest S3 Support
|
|
The v3.3 release supports suspend-to-RAM of post-launched VMs running
|
|
with OVMF.
|
|
|
|
System Performance Optimization - Virtio-blk Multi-Virtqueue Support
|
|
This release optimizes the virtio-block backend performance by allowing
|
|
multiple virtqueues between a frontend driver and the backend.
|
|
|
|
Notification of VM Events
|
|
Emit events (such as RTC changes and power cycles) to the monitor socket for
|
|
customizing further actions upon such events.
|
|
|
|
Enhance device model passthrough
|
|
This release support passthrough PCI device with legacy interrupt, some ACPI device like
|
|
GPIO controller, legacy UART.
|
|
|
|
ServiceVM supervisor role
|
|
User can config ServicVM as supervisor role in result it can manage the power status of
|
|
any guest VM.
|
|
|
|
|
|
Upgrading to v3.3 from Previous Releases
|
|
****************************************
|
|
|
|
We recommend you generate a new board XML for your target system with the v3.3
|
|
Board Inspector. You should also use the v3.3 Configurator to generate a new
|
|
scenario XML file and launch scripts. Scenario XML files and launch scripts
|
|
created by previous ACRN versions will not work with the v3.3 ACRN hypervisor
|
|
build process and could produce unexpected errors during the build.
|
|
|
|
Given the scope of changes for the v3.3 release, we have recommendations for how
|
|
to upgrade from prior ACRN versions:
|
|
|
|
1. Start fresh from our :ref:`gsg`. This is the best way to ensure you have a
|
|
v3.3-ready board XML file from your target system and generate a new scenario
|
|
XML and launch scripts from the new ACRN Configurator that are consistent and
|
|
will work for the v3.3 build system.
|
|
#. Use the :ref:`upgrader tool <upgrading_configuration>` to attempt upgrading
|
|
your configuration files that worked with prior releases. You'll need the
|
|
matched pair of scenario XML and launch XML files from a prior configuration,
|
|
and use them to create a new merged scenario XML file. See
|
|
:ref:`upgrading_configuration` for details.
|
|
#. Manually edit your previous older scenario XML and launch XML files to make them
|
|
compatible with v3.3. This is not our recommended approach.
|
|
|
|
Here are some additional details about upgrading to the v3.3 release.
|
|
|
|
Generate New Board XML
|
|
======================
|
|
|
|
Board XML files, generated by ACRN Board Inspector, contain board information
|
|
that is essential for building the ACRN hypervisor and setting up User VMs.
|
|
Compared to previous versions, ACRN v3.3 adds the following information to the
|
|
board XML file for supporting new features and fixes:
|
|
|
|
* Fix typo in PCIe PTM Capability name (See :acrn-pr:`8607`)
|
|
* Support motherboard which exposes MCFG1/MCFG2 instad of one ACPI MCFG
|
|
table. (See :acrn-pr:`8513`)
|
|
|
|
See the :ref:`board_inspector_tool` documentation for a complete list of steps
|
|
to install and run the tool.
|
|
|
|
Update Configuration Options
|
|
============================
|
|
|
|
As explained in this :ref:`upgrading_configuration` document, we do provide a
|
|
tool that can assist upgrading your existing pre-v3.3 scenario XML files in the
|
|
new merged v3.3 format. From there, you can use the v3.3 ACRN Configurator UI to
|
|
open the upgraded scenario file for viewing and further editing if the upgrader
|
|
tool lost meaningful data during the conversion.
|
|
|
|
The ACRN Configurator adds the following features and fixes to improve the user
|
|
experience:
|
|
|
|
* Support Main VM configuration. (See :acrn-pr:`8658`)
|
|
* Change Service VM to supervisor role. (See :acrn-pr:`8630`)
|
|
* Fix Vue3 version and update braces version (See :acrn-pr:`8627`)
|
|
* Fix openssl's vulnerability for tauri (See :acrn-pr:`8670`)
|
|
* Fix v-model used on props for Vue3 making strictly checking (See :acrn-pr:`8597`)
|
|
* Support vUART two options in configurator (See :acrn-pr:`8649`)
|
|
* Add checking cpu affinity and serial port for post-launch VM and hypervisor
|
|
while the user click to append a new VM. (See :acrn-pr:`8602`)
|
|
|
|
See the :ref:`scenario-config-options` documentation for details about all the
|
|
available configuration options in the new Configurator.
|
|
|
|
|
|
Document Updates
|
|
****************
|
|
|
|
Here are some of the more significant documentation updates from the v3.2 release:
|
|
|
|
.. rst-class:: rst-columns2
|
|
|
|
* :ref:`gsg`
|
|
* :ref:`using_celadon_as_user_vm`
|
|
* :ref:`release_notes_3.3`
|
|
* :ref:`hv-config`
|
|
* :ref:`acrn_configurator_tool`
|
|
* :ref:`GSG_sample_app`
|
|
* :ref:`acrnshell`
|
|
|
|
|
|
Fixed Issues Details
|
|
********************
|
|
|
|
.. comment example item
|
|
- :acrn-issue:`5626` - Host Call Trace once detected
|
|
|
|
- :acrn-issue:`8608` - hybrid vcpuid support
|
|
- :acrn-issue:`8590` - Hypervisor crashes after rebooting post-launched vm with passthrogh device for lots of times
|
|
- :acrn-issue:`8599` - Should clear pcpu_active_bitmap in start_pcpu
|
|
- :acrn-issue:`8590` - Hypervisor crashes after rebooting post-launched vm with passthrogh device for lots of times
|
|
- :acrn-issue:`8576` - Update-grub failed with GRUB 2.12
|
|
- :acrn-issue:`8518` - Initial boot log is lost in vm_console
|
|
- :acrn-issue:`8509` - S3 feature of Service VM OS is not available
|
|
- :acrn-issue:`8506` - Unable to passthrough USB device on bus 5 to guest
|
|
- :acrn-issue:`8500` - Add weight support for BVT scheduler
|
|
- :acrn-issue:`8495` - Service VM dead loops when booting up on platform with reserved memory as the last e820 entry
|
|
- :acrn-issue:`8492` - passthru multifunction device at function 0 will cause sub-function devices lost
|
|
- :acrn-issue:`8537` - Emulate COM3/4 in devicemodel
|
|
- :acrn-issue:`8491` - need to expose service vm config pointer
|
|
- :acrn-issue:`8579` - debian: fix broken grub config with grub 2.12
|
|
- :acrn-issue:`6631` - Fix Kata support with modify network configuration
|
|
|
|
Known Issues
|
|
************
|
|
|
|
- :acrn-issue:`6978` - openstack failed since ACRN v2.7
|
|
- :acrn-issue:`7827` - Pre_launched standard VMs cannot share CPU with Service VM in configurator
|
|
- :acrn-issue:`8471` - PTM enabling failure on i225 NIC
|
|
- :acrn-issue:`8472` - Failed to clear memory for post-launched standard VM
|
|
|
|
|