ChangeLog/5.2
IMPORTANT NOTE: in this release we have switched our build system to Meson. Building should be broadly unchanged for most users, but please see the 'Build Information' section of the changelog for details.
System emulation
Incompatible changes
New deprecated options and features
68k
Alpha
Arm
- ARMv8.2 FEAT_FP16 (half-precision floating point) is now implemented for AArch32 emulation (AArch64 already supported this)
- The SMMUv3 model now supports SMMUv3.2 range invalidation
- The sbsa-ref board now has an embedded controller model for guest powerdown and reboot requests
AVR
HPPA
- Fix firmware to boot NetBSD
- Fix many artist framebuffer out-of-bounds accesses
- Fix various artist screen updates when running dtwm on HP-UX
- SeaBIOS-hppa firmware now includes a version check
Microblaze
MIPS
Nios2
OpenRISC
PowerPC
Renesas RX
Renesas SH
RISC-V
- Improvements to the Ibex (OpenTitan) PLIC
- OpenSBI v0.8 included
- Generic OpenSBI platform used when no -bios argument is supplied
- A dummy L2 cache controller for the sifive_u is now included
- PMPCFG CSR setting bug fixed for RV64
- Improvements to the floating point helpers
- Experimental Hypervisor support updated to v0.6.1
- Support for NUMA sockets on Virt and Spike Machines
s390
SPARC
TileGX
Tricore
x86
Xtensa
- DFPU coprocessor with single and double precision floating point opcodes is now supported
- NMI is now supported
Device emulation and assignment
ACPI
Audio
Block devices
Graphics
Input devices
IPMI
Network devices
NVDIMM
NVMe
- Add support for mandatory features of version 1.3 of the NVM Express specification
- Add support for the Abort, Asynchronous Event Request and Get Log Page commands
PCI/PCIe
SCSI
SD card
SMBIOS
TPM
USB
VFIO
virtio
Xen
fw_cfg
9pfs
- Significant performance improvement of Treaddir requests.
virtiofs
Semihosting
Audio
Character devices
Crypto subsystem
experimental qmp interface
GUI
GDBStub
Host support
Memory backends
Migration
- A new 'block-bitmap-mapping' migration parameter is added, allowing finer control of which bitmaps to migrate, even when node names differ between source and destination.
Monitor
HMP
Network
Block device backends and tools
- qcow2 files now support extended L2 entries that allow subcluster-based allocation (enable with
extended_l2=on
when creating the image).
Tracing
Miscellaneous
User-mode emulation
TCG
Guest agent
Build Information
- The build system is now partly based on Meson. However, building is still done with configure and make as in previous versions of QEMU.
- Binaries for emulators are placed in the root build directory, for example as qemu-system-ppc instead of ppc-softmmu/qemu-system-ppc. Symbolic links from the old binary are preserved to simplify the transition.
- In-tree builds are not supported anymore. The build system will try to cater for ./configure && make && make install by building QEMU in a directory named build, but you are encouraged to switch to out-of-tree builds instead.
Python
GIT submodules
Container Based Builds
Build Dependencies
- GNU Make 3.82 is now the minimum supported release for building QEMU. Note that this version is not included in macOS and must be installed from packaging systems such as Homebrew.
- Python setuptools are now required to build QEMU.
Testing
Windows
Known issues
- see Planning/5.2