ChangeLog/0.15

From QEMU
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

0.15.1

0.15.0

Targets

  • New targets added: Lattice Mico32 (LM32) and UniCore32.

ARM

  • Many bugs in Neon and other ARMv6 and ARMv7 instructions have been fixed
  • Floating point instructions now generally handle NaNs and floating point status flags correctly
  • Dummy implementations of cp15 performance counters and cp14 debug registers mean we can boot more recent Linux kernels that probe for these features
  • SA-1110/SA-1100 support has been added
  • New machine models: ARM Versatile Express (machine "vexpress-a9"), Sharp Zaurus SL-5500 (machine "collie")

LM32

  • Basic support for LM32 EVR evaluation board
  • Full-featured support for the Milkymist SoC including video rendering.
  • Almost complete opcode testsuite

SPARC

x86

Hosts

ARM

  • Support QEMU's host C code being compiled in Thumb mode (as some gccs do by default)

KVM

Common

  • Countless fixes ported over from qemu-kvm, core is now shared with that tree, i.e. has the same quality
  • Pimped up threading model, now fully synchronized with qemu-kvm tree
  • Removed dependency on external kernel headers, all supported KVM features are now built into the binary

x86

  • Paravirtual kvmclock fixes
  • Stable guest TSC across migration
  • Support for SMEP CPU feature
  • Support for VIA CPU features
  • Reworked & fixed MCE support

Devices

virtio-serial

  • Various fixes for hot-unplug of ports
  • Disallow generic ports at id 0: port number 0 is reserved for console ports for backward compatibility; '-device virtserialport,nr=0' is now not allowed.
  • Allow re-use of a chardev after a port using it gets unplugged
  • Add trace events

RTC

  • MC146818 (for PCs): Follow host clock resets to the past immediately (instead of freezing the clock)

Balloon

  • Fix use-after-free bug that lead to qemu crash when 'balloon 0' was issued in the monitor
  • Multiple balloon devices are now forbidden; it doesn't make sense to have more than one device at a time.
  • Negative balloon values are now rejected. The previous behaviour was to silently deflate the balloon (negative values were parsed as very high positive values)
  • Fix memory leaks on exit or unplug of the virtio-balloon device
  • Fix migration after unplugging of the virtio-balloon device. Previously, the destination aborted migration for a missing section.

Block Layer

  • Added missing -drive options to the man page
  • Expose live snapshot support in QMP using the snapshot-blkdev-sync command (commit d967b2f)
  • Fixed removable media support to not cache the media size. Before this fix, the guest OS would see the old CD-ROM size even after changing the medium. (commit 46a4e4e)

qemu-img

  • qemu-img convert and rebase now support the -p option which enables progress display (commit 6b837bc)
  • qemu-img commit, convert and rebase now support the -t option which allows to specify a cache mode that should be used to open the image (commit 661a0f7)
  • The performance of qemu-img convert has been improved (commit f6a00aa)

Block Drivers

qcow2

  • Improved the performance of creating/deleting internal snapshots (commit 93913df)

qed

VMDK

Sheepdog

RBD

IDE Emulation

  • Added support for the TRIM command (commit d353fb7)
  • Instead of the device ide-drive for both hard disks and CD-ROMs we have now separate ide-hd and ide-cd devices (commit 1f56e32)
  • Fixed confusion between the Busmaster IDE status register and internal error state, which could lead to crashes (commit def9379)

CDROM Emulation

  • Many fixes to comply with ATAPI specification
  • GET_EVENT_STATUS_NOTIFICATION: Implement 'media' subcommand that helps report tray open/close, media present/absent states to guests. Newer Linux guests (kernels 2.6.38+) rely on this command to revalidate discs.
  • Major code refactoring and cleanup

virtio-blk

  • The serial number of the drive is now exposed as a qdev property (commit a8686a9)

SCSI Disk Emulation

  • Instead of the device scsi-disk for both hard disks and CD-ROMs we have now separate scsi-hd and scsi-cd devices (commit b443ae6)

Networking

User space (slirp)

  • Fixed DHCP support in restrict (host-only) mode
  • Ping packet forwarding to external hosts via unprivileged ICMP sockets of Linux 3.0

QMP / Monitor

Tracing

Linux-user

New build dependencies (mandatory and optional)

  • glib-2.0 (mandatory). Used only for guest agent so far, and on platforms that lack ucontext interface (e.g. BSD).
  • libcurl 7.15.4 or better (optional, required for CURL block driver support)
  • spice 0.6.0 or better (optional)
  • libnss3 (network security services from Mozilla project) (unused?). Detected and linked for --enable-smartcard-nss, but apparently not used