ChangeLog/9.0
System emulation
Removed features and incompatible changes
Consult the 'Removed features' page for details of suggested replacement functionality.
- Running QEMU with KVM requires Linux 4.4 or newer. A future version of QEMU will increase the minimum requirement for Arm hosts to Linux 4.19 (also when running KVM); if this is too restrictive for your use case, please contact us at qemu-devel@nongnu.org.
- The behaviour of the '-serial none' option when used together with other '-serial' options has been corrected. Previously when '-serial none' was followed by '-serial something' the '-serial none' was effectively ignored. Now it controls the existence of the first serial port, and the following '-serial' option controls the behaviour of the second serial port; this brings it in to line with how all other cases of multiple '-serial' options work. If you have a command line that was accidentally relying on the old behaviour, you can simply delete the unnecessary '-serial none'.
New deprecated options and features
Consult the "Deprecated Features" chapter of the QEMU System Emulation User's Guide for further details of the deprecations and their suggested replacements.
68k
Alpha
Arm
- New architectural features now emulated:
- FEAT_NV
- FEAT_NV2
- New board types:
- b-l475e-iot01a : the B-L475E-IOT01A board (currently minimal support only)
- Changes to existing board types:
- The Freescale i.MX6 now models the cache controller and the PCIe controller
- The Allwinner R40 and Bananapi boards now model the USB controllers, the AHCI/SATA controller and the watchdog timer
- Raspberry Pi boards now support the SPI controller
- The npcm7xx based boards now support the ethernet controllers
AVR
Hexagon
HPPA
- SeaBIOS-hppa version 15
- Fixed 32-bit HP-UX crashes on B160L (32-bit) machine
- Fixed NetBSD boot failure due to power button in page zero
- Fixed NetBSD FPU detection failure
- Fixed OpenBSD 7.4 boot failure
- Allows usage of up to 3840 MB of memory (instead of 3 GB)
- Supports the qemu --nodefaults option
LoongArch
ISA and Extensions
Machines
Microblaze
MIPS
Nios2
OpenRISC
PowerPC
Renesas RX
Renesas SH
RISC-V
ISA and Extensions
- Add support for Zacas extension
- Add amocas.[w,d,q] instructions
- RVA22 profiles support
- Add RVV CSRs to KVM
Machines
- ACPI: Enable AIA, PLIC and update RHCT
- Fix the interrupts-extended property format of PLIC
- Document acpi parameter of virt machine
- Remove group setting of KVM AIA if the machine only has 1 socket
- sifive_u: Update S-mode U-Boot image build instructions
Fixes and Misc
- Fix th.dcache.cval1 priviledge check
- Don't allow write mstatus_vs without RVV
- Fix machine IDs QOM getters
- Fix KVM reg id sizes
- Upgrade OpenSBI from v1.3.1 to v1.4
- pmp: Ignore writes when RW=01 and MML=0
- Don't adjust vscause for exceptions
- Ensure mideleg is set correctly on reset
s390x
- Fix access register handling in the emulation of the LOAD ADDRESS EXTENDED (LAE) instruction
SPARC
Tricore
x86
Xen emulation under KVM
TCG
Known issues
Xtensa
Device emulation and assignment
ACPI / SMBIOS
Audio
Block devices
Graphics
Hyper-V
I2C
Input devices
IPMI
Multi-process QEMU
Network devices
NVDIMM
NVMe
PCI/PCIe
SCSI
SD card
SMBIOS
TPM
UFS
USB
VFIO
virtio
vDPA
Xen
fw_cfg
9pfs
virtiofs
Semihosting
Audio
Character devices
Crypto subsystem
Authorization subsystem
GUI
GDBStub
TCG Plugins
Host support
Memory backends
Migration
- Fixed migration for SUSPENDED VM, where we used to ignore the SUSPENDED state and kick off the VM even if it was suspended before the migration.
Monitor
QMP
HMP
Network
Block device backends and tools
Tracing
Semihosting
Miscellaneous
User-mode emulation
runtime
binfmt_misc
alpha
arm/arm64/aarch64
LoongArch
HPPA
s390
x86
TCG
Record/Replay
- fixed record/replay to avoid problems with partial chardev drains
- updated replay-dump.py for current ABI