ChangeLog/8.0: Difference between revisions

From QEMU
(Undo revision 11192 by Eperezma (talk))
Tag: Undo
No edit summary
Line 137: Line 137:


==== Network devices ====
==== Network devices ====
* igb device emulation


==== NVDIMM ====
==== NVDIMM ====

Revision as of 03:07, 13 March 2023

System emulation

Incompatible changes

Consult the 'Removed features' page for details of suggested replacement functionality.

Other removed features

New deprecated options and features

Consult the "Deprecated Features" chapter of the QEMU System Emulation User's Guide for further details of the deprecations and their suggested replacements.

68k

Alpha

Arm

  • The following CPU architecture features are now emulated:
    • FEAT_EVT
    • FEAT_FGT
    • AArch32 ARMv8-R support
  • New emulated CPU types:
    • Cortex-A55 CPU
    • Cortex-R52 CPU
  • The GICv3 can now be emulated under hvf acceleration
  • M-profile system registers and A-profile pointer-authentication information is now exposed to the gdbstub
  • Linux/arm64 EFI zboot format kernel images can now be booted with -kernel

Machines

  • The cubieboard machine is now able to boot directly from an SD card image.
  • orangepi now implements some previously missing i2c controllers
  • New machine types:
    • ``olimex-stm32-h405`` -- Olimex STM32 H405 board with STM32F405RGT6 microcontroller

AVR

Hexagon

HPPA

  • Implemented fid instruction (Floating-Point Identify)
  • Create illegal instruction when executing 64-bit load/save on 32-bit emulation

LoongArch

Microblaze

MIPS

Nios2

OpenRISC

PowerPC

Renesas RX

Renesas SH

RISC-V

ISA and Extensions

  • Add smstateen support
  • Support native debug icount trigger
  • Support cache-related PMU events in virtual mode
  • Add Zawrs ISA extension support
  • Add support for the T-Head vendor extensions
  • Experimantal support for writable misa.
  • Support for Svadu extension.
  • Support for the Zicond extension.
  • Support for the Zicbiom, ZCicboz, and Zicbop extensions.
  • Support for setting the virtual address width (ie, sv39/sv48/sv57) on the command line.

Machines

  • Bump the OpenTitan supported version
  • Add some missing PolarFire SoC io regions
  • riscv_htif: Support console output via proxy syscall
  • Update opentitan IRQs
  • OpenSBI has been updated to version 1.2, see release notes for more details.
  • Support for ACPI on RISC-V.

Fixes and Misc

  • Fix PMP propagation for tlb
  • Remove the redundant ipi-id property in the virt machine
  • Fix mret exception cause when no pmp rule is configured
  • Fix bug where disabling compressed instructions would crash QEMU
  • Cleanup firmware and device tree loading
  • Fix elen check when using vector extensions
  • Ensure we always follow MISA parsing
  • Fix up masking of vsip/vsie accesses
  • Trap on writes to stimecmp from VS when hvictl.VTI=1
  • Update disas for xnor/orn/andn and slli.uw
  • Fix rom code when Zicsr is disabled
  • A collection of fixes for virtulisation
  • Set tval for triggered watchpoints
  • A fix for virtual instr exception
  • Fix ctzw behavior
  • Fix SBI getchar handler for KVM
  • A fix for PMP matching to avoid incorrectly appling the default permissions on PMP permission violations.
  • Fixes for the vector slide instructions to avoid truncating 64-bit values (such as doubles) on 32-bit targets.
  • Fixes to gdbstub, CSR accesses, dependencies between the various floating-point exceptions, and XTheadMemPair.

s390x

SPARC

Tricore

  • Fix OPC1_16_SRO_LD_H translation
  • Fix OPC2_32_BO_LD_BU_PREINC translation
  • Fix OPC2_32_RRRR_DEXTR/RRPW_DEXTR translation
  • Fix OPC2_32_RCRW_INSERT translation
  • Fix OPC2_32_RCRW_IMASK translation

x86

Xtensa

Device emulation and assignment

ACPI / SMBIOS

Audio

Block devices

Graphics

I2C

Input devices

IPMI

Multi-process QEMU

Network devices

  • igb device emulation

NVDIMM

NVMe

PCI/PCIe

SCSI

SD card

SMBIOS

TPM

USB

VFIO

  • Experimental migration support has been updated to the v2 VFIO migration protocol, v1 has been removed.

virtio

Xen

fw_cfg

9pfs

virtiofs

The old C virtiofsd has been removed, use the new Rust implementation instead.

Semihosting

  • semihosting now has some documentation in the manual
  • semihosting only supports O_BINARY mode for file operations

Audio

Character devices

Crypto subsystem

A flaw in handling cached data when reading from a TLS channel has been fixed. This could affect TLS when used with character devices in particular where it is common to read less than one TLS packet of data at a time.

Authorization subsystem

GUI

The deprecated 'password' option for SPICE is removed. Applications should use 'password-secret' instead, together with '-object secret'.

GDBStub

TCG Plugins

  • some deadlocks cases where fixed when using plugins

Host support

Memory backends

Migration

Monitor

QMP

HMP

Network

Block device backends and tools

  • The iscsi driver 'password' option is deprecated, in favour of 'password-secret' which is to be used in combination with '--object secret'

Tracing

Semihosting

Miscellaneous

User-mode emulation

build

binfmt_misc

Hexagon

LoongArch

Nios2

HPPA

x86

TCG backends

ARM

Guest agent

  • Add USB but type support for guest-get-fsinfo in Windows
  • Add initial OpenBSD and NetBSD support
  • Add logging to Windows event log
  • Fix build with Glib version > 2.73.2 (Windows)

Build Information

Build Dependencies

  • we have dropped perl as a build dependency

Windows

Testing and CI

  • we have started deprecating docker.py and directly call docker/podman to build most images now
  • some longer running avocado tests have been disabled for GITLAB_CI (tuxrun_baselines does a fairly comprehensive job across most architectures now)

Known issues