ChangeLog/2.2: Difference between revisions

From QEMU
(→‎ABI breaking: remove, see incompatible changes)
(as of 4f2280b2190e39aa6761cc8188626ed9aad350c1)
Line 9: Line 9:


=== ARM ===
=== ARM ===
* Support for loading a device tree even with no -kenel option or when booting ELF images
* Support for input interrupts in the PL061 GPIO controller
* TCG can emulate watchpoints.
=== LM32 ===
=== LM32 ===
=== Microblaze ===
=== Microblaze ===
=== MIPS ===
=== MIPS ===
=== PowerPC ===
=== PowerPC ===
* Mac OS X 10.2, 10.3 and 10.4 guests run with the mac99 machine type.
* Bugfixes and optimization for TCG emulation of PowerPC targets.
==== IBM (pSeries) ====
* Support for the "nmi" monitor command, to enter the kernel debugger.
* Support for the "nmi" monitor command, to enter the kernel debugger.
==== IBM ====
==== Freescale (BookE) ====
==== Freescale ====
* Breakpoint support on KVM.
=== s390 ===
=== s390 ===
* Support for boot from DASD.
* Support for memory hotplug.
=== SPARC ===
=== SPARC ===
* Emulation of TCX hardware acceleration.
=== TriCore ===
* New target.
=== x86 ===
=== x86 ===
* Support for IOMMU (VT-d) emulation on the Q35 machine type, enabled with "-machine iommu=on"
==== KVM ====
==== KVM ====
<!-- * More robust live migration of the kvm pv clock -->
<!-- * More robust live migration of the kvm pv clock -->
Line 31: Line 43:
* Support for ARI forwarding on PCIe root ports.
* Support for ARI forwarding on PCIe root ports.
==== USB ====
==== USB ====
* Support for hot-plugging XHCI/EHCI/UHCI controllers (in the case of EHCI/UHCI, only if there are no companion controllers)
==== VFIO  ====
==== VFIO  ====
=== GUI ===
=== GUI ===
Line 45: Line 58:
* Support for Parallels images larger than 2TB.
* Support for Parallels images larger than 2TB.
* Network-based drivers (NBD, libiscsi, etc.) now work on Win32 hosts too.
* Network-based drivers (NBD, libiscsi, etc.) now work on Win32 hosts too.
* qemu-img source cache option?
* qemu-nbd has a new --detect-zeroes option.
== TCG ==
== TCG ==
* In icount mode, it is possible to slow down emulation to match the requested CPU frequency (thus ensuring that the host and guest clocks remain aligned).  This is enabled with "-icount N,align=on".
* In icount mode, it is possible to slow down emulation to match the requested CPU frequency (thus ensuring that the host and guest clocks remain aligned).  This is enabled with "-icount N,align=on".
* A new "victim TLB" provides a 5-10% performance improvement.
== Tracing ==
== Tracing ==
* QEMU provides a SystemTap script that outputs binary trace data, for use in flight-recorder mode.  The resulting traces can be parsed with QEMU's simpletrace.py script (using the --no-header command-line option).
* QEMU provides a SystemTap script that outputs binary trace data, for use in flight-recorder mode.  The resulting traces can be parsed with QEMU's simpletrace.py script (using the --no-header command-line option).

Revision as of 13:46, 24 September 2014

System emulation

Incompatible changes

Future incompatible changes

  • Three options are using different names on the command line and in configuration file. In particular:
    • The "acpi" configuration file section matches command-line option "acpitable";
    • The "boot-opts" configuration file section matches command-line option "boot";
    • The "smp-opts" configuration file section matches command-line option "smp".
Starting with QEMU xyz.jkl, -readconfig will standardize on the name for the command line option.

ARM

  • Support for loading a device tree even with no -kenel option or when booting ELF images
  • Support for input interrupts in the PL061 GPIO controller
  • TCG can emulate watchpoints.

LM32

Microblaze

MIPS

PowerPC

  • Mac OS X 10.2, 10.3 and 10.4 guests run with the mac99 machine type.
  • Bugfixes and optimization for TCG emulation of PowerPC targets.

IBM (pSeries)

  • Support for the "nmi" monitor command, to enter the kernel debugger.

Freescale (BookE)

  • Breakpoint support on KVM.

s390

  • Support for boot from DASD.
  • Support for memory hotplug.

SPARC

  • Emulation of TCX hardware acceleration.

TriCore

  • New target.

x86

  • Support for IOMMU (VT-d) emulation on the Q35 machine type, enabled with "-machine iommu=on"

KVM

Xen

  • QEMU can now boot a bzImage or multiboot kernel under Xen, using the command line option -kernel.

Xtensa

Device emulation and assignment

SCSI

  • Passthrough of vendor-specific commands now works (only with the virtio-scsi HBA).

PCI/PCIe

  • MSIs are now (correctly) disabled until bus master DMA is enabled for the device.
  • Support for ARI forwarding on PCIe root ports.

USB

  • Support for hot-plugging XHCI/EHCI/UHCI controllers (in the case of EHCI/UHCI, only if there are no companion controllers)

VFIO

GUI

Monitor

Migration

Network

Block devices in system emulation

  • Many fixes to AHCI emulation.
  • The list of functionality now supported in threaded virtio-blk backend is growing: new in 2.2 are resizing of disks, device hot-unplug, and the embedded NBD server.

Various

Block devices and tools

  • Support for Archipelago as a QEMU block backend
  • QEMU is more resistent against failure of large allocations in the block layer
  • Support for Parallels images larger than 2TB.
  • Network-based drivers (NBD, libiscsi, etc.) now work on Win32 hosts too.
  • qemu-img source cache option?
  • qemu-nbd has a new --detect-zeroes option.

TCG

  • In icount mode, it is possible to slow down emulation to match the requested CPU frequency (thus ensuring that the host and guest clocks remain aligned). This is enabled with "-icount N,align=on".
  • A new "victim TLB" provides a 5-10% performance improvement.

Tracing

  • QEMU provides a SystemTap script that outputs binary trace data, for use in flight-recorder mode. The resulting traces can be parsed with QEMU's simpletrace.py script (using the --no-header command-line option).

User-mode emulation

Build dependencies

Known issues