ChangeLog/4.1
System emulation
Incompatible changes
New deprecated options and features
Consult the "Deprecated Features" appendix for the full list of historically deprecated features/options.
Alpha
68k
Arm
- QEMU now supports emulating an FPU for Cortex-M CPUs, and the Cortex-M4 and Cortex-M33 now provide the FPU.
- The build config files have been switched to the new Kconfig system, so that a QEMU with individual boards can be built more easily
HPPA
Microblaze
MIPS
- Marking referenced memory pages as executable is improved (restricted to neccessary cases only).
- A set of fixes for emulation of MSA ASE instructions on big endian hosts
- The 'div by zero' cases in integer MSA ASE instructions are now handled in QEMU and on the reference hardware the same way
Nios2
OpenRISC
PowerPC
- NVIDIA V100 GPU/NVLink2 passthrough for spapr using VFIO PCI
RISC-V
s390
- The bios now supports IPL (boot) from ECKD DASD assigned to the guest via vfio-ccw.
SH
SPARC
TileGX
Tricore
x86
- New Hygon Dhyana CPU model
- The
host-cache-info
CPU option now affects the TOPOEXT CPUID leaf (0x8000001D)
Xtensa
Device emulation and assignment
ACPI
Audio
Block devices
Graphics
Input devices
IPMI
Network devices
NVDIMM
PCI/PCIe
SCSI
SMBIOS
TPM
USB
VFIO
virtio
Xen
fw_cfg
9pfs
Audio
Character devices
Crypto subsystem
GUI
Host support
Memory backends
- QEMU will automatically try to use the
MAP_SYNC
mmap
flag for memory backends configured withpmem=on,share=on
Monitor
Migration
Network
Block devices and tools
qemu-img rebase
works now even when the input file doesn't have a backing file yet
Tracing
Miscellaneous
- Unless QEMU is configured with
--disable-blobs
,make install
will install UEFI platform firmware binaries, and matching variable store templates, at$prefix/share/qemu/edk2-*.fd
.- These files are built from the edk2 project's ArmVirtPkg and OvmfPkg firmware platforms, and the edk2 project's OpenSSL submodule.
- They are documented (and exposed to virt management applications) through JSON files in
$prefix/share/qemu/firmware/
. - The schema definition for the JSON descriptors is located at
docs/interop/firmware.json
in the QEMU source tree.
User-mode emulation
TCG
Guest agent
Build Information
The configure argument --source-path
has been removed. This argument used to be provided to allow the user to specify that the source tree was in a different location from the configure script itself. This odd way of building is no longer supported, and we always assume that the source tree is where the configure script is. (Note that a separate build tree is still permitted -- the build tree is the working directory which configure is run from.)
Python
- Build and test scripts will now use the
python3
binary by default if available
GIT submodules
Build Dependencies
Known issues
- see Planning/4.1