ChangeLog/2.1: Difference between revisions

From QEMU
No edit summary
(as of commit 2b5b7ae917e8db48431631b1c5d909fa46c223a6)
Line 1: Line 1:
(as of commit e00fcfeab3d452cba3d0a08991a39ab15df66424)
(as of commit 2b5b7ae917e8db48431631b1c5d909fa46c223a6)


== System emulation ==
== System emulation ==
Line 14: Line 14:


=== ARM ===
=== ARM ===
* Firmware can be passed to the vexpress machine via -bios.
* Improvements to Allwinner SoC emulation.
* Improvements to Allwinner SoC emulation.
* Initial support in TCG for EL2 and EL3.
* Initial support in TCG for EL2 and EL3.
Line 27: Line 28:
* Support for VFIO (with guest-side IOMMU) on pSeries.
* Support for VFIO (with guest-side IOMMU) on pSeries.
* Support for emulation of decimal number instructions.
* Support for emulation of decimal number instructions.
* dump-guest-memory is supported for little endian ppc64


=== s390 ===
=== s390 ===
* virtio-ccw supports migration


=== SPARC ===
=== SPARC ===
Line 38: Line 41:
* More faithful CPL (current privilege level) emulation in TCG mode.
* More faithful CPL (current privilege level) emulation in TCG mode.
* More faithful MMU emulation in TCG mode, including support for 1GB pages and SMEP/SMAP bugfixes.
* More faithful MMU emulation in TCG mode, including support for 1GB pages and SMEP/SMAP bugfixes.
* Support for pinning memory on host NUMA nodes.  The existing options "-mem-prealloc", "-mem-path", "-machine mem-merge" and "-machine dump-guest-core" are subsumed by the QOM objects "memory-backend-ram" and "memory-backend-file", and by the "memdev" option of "-numa node".  This will be extended to other machines in future releases.
* Support for memory hotplug using the new "pc-dimm" device and the QOM objects "memory-backend-ram" and "memory-backend-file".


==== KVM ====
==== KVM ====
Line 52: Line 57:
* Support for file-sharing via MTP emulation
* Support for file-sharing via MTP emulation
* Host USB3 device can be attached to a EHCI (USB 2.0) controller in the guest
* Host USB3 device can be attached to a EHCI (USB 2.0) controller in the guest
* Support for attaching keyboards and mice to a specific video card (multi-seat).


==== VFIO  ====
==== VFIO  ====
Line 59: Line 65:
* Many bug fixes for the GTK+ interface.
* Many bug fixes for the GTK+ interface.
* Mouse wheel support for the SDL 2.0 interface.
* Mouse wheel support for the SDL 2.0 interface.
* Support for multi-seat in the GTK+ and SDL 2.0 interfaces.


=== Monitor ===
=== Monitor ===
* Ctrl-L (form feed) can be used to clear the screen in the monitor.
* More commands support command-line completion.
* More commands support command-line completion.
* New monitor command "info memdev" (with the QMP counterpart "query-memdev").
* New QMP command "query-acpi-ospm-status" and event "ACPI_DEVICE_OST" provide information from the guest's invocation of the _OST method.


=== Migration ===
=== Migration ===
Line 67: Line 77:


=== Network ===
=== Network ===
* Improved emulation of link auto-negotiation fixes bugs in Mac OS X.
* More variants of the e1000 NIC are supported (e1000-82540em, e1000-82544gc, e1000-82545em).  The default e1000 fails with versions of Mac OS X starting at 10.9, while the new e1000-82545em works with all versions of Mac OS X starting at 10.6.
* More variants of the e1000 NIC are supported (e1000-82540em, e1000-82544gc, e1000-82545em).  The default e1000 fails with versions of Mac OS X starting at 10.9, while the new e1000-82545em works with all versions of Mac OS X starting at 10.6.
* New "vhost-user" backend for -net and -netdev.


=== Block devices in system emulation ===
=== Block devices in system emulation ===
Line 74: Line 86:


=== Various ===
=== Various ===
* Non-contiguous host CPUs can be assigned to a single NUMA node.  Commas in the CPU list have to be escaped, as in "-numa node,cpus=0-3,,4-7"


== Block devices and tools ==
== Block devices and tools ==

Revision as of 11:00, 25 June 2014

(as of commit 2b5b7ae917e8db48431631b1c5d909fa46c223a6)

System emulation

Incompatible changes

  • The 82573L NIC was incorrectly treated as an 8254xx model. It no longer works correctly on either Linux (3.14.*) or Windows 7 and has been removed.


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

  • Firmware can be passed to the vexpress machine via -bios.
  • Improvements to Allwinner SoC emulation.
  • Initial support in TCG for EL2 and EL3.
  • Much more complete support for AArch64.

LM32

Support for semihosting.

Microblaze

  • Support for u-boot initrd images.

Power

  • Support for VFIO (with guest-side IOMMU) on pSeries.
  • Support for emulation of decimal number instructions.
  • dump-guest-memory is supported for little endian ppc64

s390

  • virtio-ccw supports migration

SPARC

  • Improved IOMMU emulation.

x86

  • QEMU now presents version 0x14 for the emulated local APIC, for consistency with KVM and improved compatibility with Mac OS X.
  • More faithful SMBus controller emulation.
  • More faithful CPL (current privilege level) emulation in TCG mode.
  • More faithful MMU emulation in TCG mode, including support for 1GB pages and SMEP/SMAP bugfixes.
  • Support for pinning memory on host NUMA nodes. The existing options "-mem-prealloc", "-mem-path", "-machine mem-merge" and "-machine dump-guest-core" are subsumed by the QOM objects "memory-backend-ram" and "memory-backend-file", and by the "memdev" option of "-numa node". This will be extended to other machines in future releases.
  • Support for memory hotplug using the new "pc-dimm" device and the QOM objects "memory-backend-ram" and "memory-backend-file".

KVM

Xen

Xtensa

Device emulation and assignment

SCSI

  • Support for MSI and MSI-X in the megasas emulation.

USB

  • Support for file-sharing via MTP emulation
  • Host USB3 device can be attached to a EHCI (USB 2.0) controller in the guest
  • Support for attaching keyboards and mice to a specific video card (multi-seat).

VFIO

  • Support for RTL8168 NICs.

GUI

  • Many bug fixes for the GTK+ interface.
  • Mouse wheel support for the SDL 2.0 interface.
  • Support for multi-seat in the GTK+ and SDL 2.0 interfaces.

Monitor

  • Ctrl-L (form feed) can be used to clear the screen in the monitor.
  • More commands support command-line completion.
  • New monitor command "info memdev" (with the QMP counterpart "query-memdev").
  • New QMP command "query-acpi-ospm-status" and event "ACPI_DEVICE_OST" provide information from the guest's invocation of the _OST method.

Migration

  • Many fixes to XBZRLE.

Network

  • Improved emulation of link auto-negotiation fixes bugs in Mac OS X.
  • More variants of the e1000 NIC are supported (e1000-82540em, e1000-82544gc, e1000-82545em). The default e1000 fails with versions of Mac OS X starting at 10.9, while the new e1000-82545em works with all versions of Mac OS X starting at 10.6.
  • New "vhost-user" backend for -net and -netdev.

Block devices in system emulation

  • Filenames can be JSON objects preceded by "json:", for example json:{'driver':'raw','file.filename':'test.img'}. This new syntax can be used in the file property for -drive, but also in qemu-io, qemu-img or backing file names.
  • The threaded backend for virtio-blk, introduced in QEMU 1.4, now supports almost all features of the block layer including: image formats, POSIX AIO (aio=threads), I/O throttling. It also does not require anymore manually setting config-wce=off. It is still considered experimental and is still missing support for long-running jobs (streaming, mirroring, snapshot deletion, backup, etc.).

Various

  • Non-contiguous host CPUs can be assigned to a single NUMA node. Commas in the CPU list have to be escaped, as in "-numa node,cpus=0-3,,4-7"

Block devices and tools

  • Support for compressed (streamOptimized) VMDK images as conversion targets.

TCG

  • Improvement to AArch64, Alpha, ia64, MIPS, S390 and SPARC backends.

Tracing

  • Support for enabling multiple trace backends using for example "--enable-trace-backends=simple,ftrace" on the configure command line.

User-mode emulation

  • Improved support for FreeBSD.
  • Support for opening /proc/self/exe.
  • New target ppc64le-linux-user, for little-endian Power platforms.

Known issues