ChangeLog/3.0

From QEMU
Revision as of 07:58, 1 August 2018 by Laurent (talk | contribs) (→‎68k)

Warning: unsupported host systems

Unsupported host setups are CPU and operating systems which we do not have access to and are thus unable to test. They will continue to work in this release (though configure will warn you about the unsupported status), but in a future QEMU release we may drop support for those hosts unless somebody volunteers to help us with maintaining them (and can provide build/CI machines).

This affects the OSes:

  • GNU/kFreeBSD
  • DragonFly BSD
  • Solaris
  • Haiku

System emulation

Incompatible changes

  • Option "-no-kvm-pit-reinjection" has been removed. Use "-global kvm-pit.lost_tick_policy=discard" instead.
  • Option "-no-kvm-irqchip" has been removed. Use "-machine kernel_irqchip=off" instead.
  • The "vlan" parameter of the "-net" option has been removed. Use "-netdev" with IDs or the "hubport" netdev instead.
  • The "xlnx-ep108" machine has been replaced by the "xlnx-zcu102" machine.
  • The qemu-img "convert -s snapshot_id_or_name" argument has been removed. Use "convert -l snapshot_param" instead.

Deprecated options and features

  • The "arch" output member of the "query-cpus-fast" command is deprecated. Use the "target" output member instead.
  • Option "-virtioconsole" is deprecated, use "-device virtconsole" instead.
  • The non-functional "-clock" option will be removed soon.
  • The "pc-0.10" and "pc-0.11" machines are now deprecated. Use newer machine types instead.
  • Option "-enable-hax" is deprecated. Use "-accel hax" instead.

Consult the "Deprecated Features" appendix for the full list of historically deprecated features/options.

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".
-readconfig will standardize on the name for the command line option.
  • Behavior of automatic calculation of SMP topology when some SMP topology options for -smp are omitted (sockets, cores, threads) will change in the future. If guest ABI needs to be preserved on upgrades while using the SMP topology options, users should either set set all options explicitly (sockets, cores, threads), or omit all of them.
  • Devices "allwinner-a10", "pc87312", "ssi-sd" will be configured with explicit properties instead of implicitly. This is unlikely to affect users.
  • For x86, specifying a CPUID feature with both "+feature/-feature" and "feature=on/off" will cause a warning. The current behavior for this combination ("+feature/-feature" wins over "feature=on/off") will be changed so that "+feature" and "-feature" will be synonyms for "feature=on" and "feature=off" respectively).
  • The read-only block drivers "bochs", "cloop" and "dmg" as well as "rbd" and "vvfat" in certain read-only configurations will no longer enable read-only mode automatically. It will be necessary to specify "read-only=on" explicitly on the command line and in QMP commands for the setup to keep working; the default "read-only=off" setting will result in an error.
  • On s390x, using KVM with a Linux host kernel version < 3.15 has been broken since QEMU version 2.10. This will not be fixed unless a need is communicated (otherwise the code will be removed in the near future, so that you need at least Linux kernel version 3.15 on the host to run KVM on System z)

Alpha

68k

  • Convert to TranslatorOps
  • fixes: subx with memory, flognp1, fcos, fsin, fmod
  • fix build Werror with gcc 8.0.1
  • correctly disassemble move16

ARM

HPPA

Microblaze

MIPS

Nios2

OpenRISC

PowerPC

pSeries

RISC-V

s390

  • add cpu model for the z14 Model ZR1 (the "small" z14)
  • add bpb/ppa15 (spectre mitigation) features to default cpu model for z196 and later
  • configuration of consoles via -serial is now supported

TCG

  • rework TOD handling and fix cpu hotplug

KVM

  • vfio-ccw: add "force-orb-pfch" parameter
    • used to accommodate guests that do not set the "unlimited prefetch" flag in the request block (which is not supported by vfio-ccw), but actually work fine with the current vfio-ccw implementation
  • remove unneeded calls to cpu_synchronize_state()

s390 firmware

  • allow non-sequential entries in boot menu
  • add support for indirect loading via .INS files in s390-netboot
  • add support for pxelinux.cfg-style network booting

SH

SPARC

TileGX

Tricore

x86

  • Formatting of CPU models and flags reported with '-cpu help' has improved readability

KVM

  • The 'ssbd', 'virt-ssbd', 'amd-ssbd' and 'amd-no-ssb' CPU feature flags are added in relation to the "Speculative Store Bypass" hardware vulnerability (CVE-2018-3639)

Xen

Xtensa

Device emulation and assignment

ACPI

Audio

Block devices

Graphics

Input devices

IPMI

Network devices

NVDIMM

PCI/PCIe

SCSI

SMBIOS

TPM

USB

VFIO

virtio

Xen

fw_cfg

9pfs

Audio

Character devices

Crypto subsystem

GUI

Host support

Memory backends

Monitor

Migration

  • Postcopy: The new 'max-postcopy-bandwidth' parameter can be used to limit the bandwidth during the postcopy phase of a migrate; it was previously unlimited.

Network

Block devices and tools

Tracing

Miscellaneous

  • Command line option values greater than 1024 bytes in length are no longer silently truncated.

User-mode emulation

  • make docker-binfmt-image-debian-NAME target for building user-mode images

For example:

   make docker-binfmt-image-debian-ubuntu-bionic-arm64 \
     DEB_ARCH=arm64 DEB_TYPE=bionic DEB_URL=http://ports.ubuntu.com \
     EXECUTABLE=./aarch64-linux-user/qemu-aarch64 V=1
  • PPC64 host fixes (page size, mmap alignment, interrupted syscall, F_*LK64)
  • syscall fixes: mmap with 0 length, setsockopt, netlink
  • new syscall: swapcontext (ppc)
  • reports most of the errors to qemu_log/UNIMP rather than stderr
  • qemu-binfmt-conf.sh: new options to use persistent (F) flag, ignore the OS/ABI field
  • add support of FDPIC for ARM

TCG

  • New build target "check-tcg" will run cross-architecture tests

Guest agent

Build Information

GIT submodules

Build Dependencies

Known issues