ChangeLog/4.2
System emulation
Incompatible changes
- The minimum version of the glib library is now 2.48
New deprecated options and features
Consult the "Deprecated Features" appendix for the full list of historically deprecated features/options.
Alpha
68k
- Added new "next-cube" machine for emulating a classic NeXTcube (still incomplete, can only boot to the firmware prompt)
Arm
HPPA
Microblaze
MIPS
- Fixed bug involving emulation of ST.W instruction in system mode only (there was no bug in Linux user mode).
Nios2
OpenRISC
PowerPC
- Behavior for unplug of multifunction PCI devices has been changed to match x86. Attempting to unplug any function will cause an unplug of the whole slot.
- There are now separate machine types for POWER8 based and POWER9 based non-virtualized machines (powernv8 & powernv9).
- Default RAM size for powernv machines has been increased to 1.75G which should allow more things to work with the default parameters.
RISC-V
s390
SH
SPARC
TileGX
Tricore
x86
Xtensa
Device emulation and assignment
ACPI
Audio
Block devices
GPIO
Graphics
Input devices
IPMI
Network devices
NVDIMM
PCI/PCIe
SCSI
SMBIOS
TPM
USB
VFIO
virtio
Xen
fw_cfg
9pfs
Semihosting
Audio
Character devices
Crypto subsystem
GUI
Host support
- Any backend that supports connection as an Inet client (NBD, chardev, network device, monitor...) can now request to use TCP keep-alive with the server.
Memory backends
Monitor
- bugs in gdbstub handling of F and ! packets have been fixed
Migration
Network
Block device backends and tools
- Block drivers can now support BDRV_REQ_PREFETCH for more efficient handling of copy-on-read requests; the NBD driver has wired this up to NBD_CMD_CACHE.
- The LUKS block driver supports falloc/full preallocation.
- The NBD server now advertises NBD_FLAG_CAN_MULTI_CONN on shared readonly connections.
- The NBD server and client support the new NBD_CMD_FLAG_FAST_ZERO as an optimization during the copying of sparse images.
Tracing
Miscellaneous
User-mode emulation
Alpha
Xtensa
- call0 ABI may be selected for the user emulation with command line option -xtensa-abi-call0 (or with QEMU_XTENSA_ABI_CALL0 environment variable).
TCG
- The tcg tests have had their configuration and build somewhat dissentagled from the main make file
- tcg tests are now in $BUILDDIR/tests/tcg/$TARGET/ (rather than $BUILDDIR/$TARGET/tests/)
Guest agent
Build Information
Python
- The minimum supported version of Python is now 3.5.
GIT submodules
Container Based Builds
- The docker.py tooling now supports podman containers [1] as an alternative to docker
- the docker.py now requires python3 to run
- a number of the cross compiler containers have been updated to Buster
Build Dependencies
- The minimum version of the glib library is now 2.48
Testing
Windows
Known issues
- see Planning/4.2