ChangeLog/5.2: Difference between revisions

From QEMU
(→‎Block device backends and tools: fewer qemu NBD blocking points)
Line 21: Line 21:


=== HPPA ===
=== HPPA ===
* Fix firmware to boot NetBSD
* Added power button emulation
* Fix many artist framebuffer out-of-bounds accesses
* Boots NetBSD
* Fix various artist screen updates when running dtwm on HP-UX
* Boots old Linux CDs, e.g debian-0.5 and debian-0.6.1
* SeaBIOS-hppa firmware now includes a version check
* Artist framebuffer fixes when running dtwm on HP-UX
* Artist graphics allows screen resolution up to 2048 x 2048 pixels
* fw_cfg interface added


=== Microblaze ===
=== Microblaze ===

Revision as of 12:51, 8 September 2020

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

  • Added power button emulation
  • Boots NetBSD
  • Boots old Linux CDs, e.g debian-0.5 and debian-0.6.1
  • Artist framebuffer fixes when running dtwm on HP-UX
  • Artist graphics allows screen resolution up to 2048 x 2048 pixels
  • fw_cfg interface added

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).
  • Using qemu as an NBD client has fewer scenarios where network timeouts stall guest execution

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.
  • ivshmem-client and ivshmem-server are not installed anymore. They are merely examples, and not to be used in production.

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

  • qemu-nbd is now built on mingw, and works for simple cases even if it can't duplicate the full functionality available on Unix systems

Known issues