pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/emulators/qemu

Module Name:    pkgsrc
Committed By:   ryoon
Date:           Thu May 19 16:10:15 UTC 2022

Modified Files:
        pkgsrc/emulators/qemu: Makefile PLIST distinfo

Log Message:
qemu: Update to 7.0.0

== System emulation ==

=== Incompatible changes ===

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

=== 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.

Additional note: The QEMU project currently considers to drop the slirp submodule in future releases, i.e. the QEMU tarball won't embed the code for user mode networking in the future anymore, so 
that an external libslirp installation is required. Most OS distribution already ship a libslirp package nowadays (except for OpenBSD which is already known and hopefully will be fixed soon), but if 
you are still using another OS distribution that does not provide a libslirp package yet, please send a note to the [[Contribute/MailingLists|qemu-devel mailing list]] and ask your OS vendor to 
include such a package in the next release.

=== 68k ===

=== Alpha ===

=== Arm ===

* The virt board has gained a new control knob to disable passing a RNG seed in the DTB (dtb-kaslr-seed)
* The AST2600 SoC now supports a dummy version of the i3c device
* The virt board can now run guests with KVM on hosts with restricted IPA ranges
* The virt board now supports virtio-mem-pci
* The virt board now supports specifying the guest CPU topology
* On the virt board, we now enable PAuth when using KVM or hvf and the host CPU supports it
* xlnx-versal-virt now emulates the PMC SLCR
* xlnx-versal-virt now emulates the OSPI flash memory controller
* xlnx-zynqmp now models the CRF and APU control
* The Arm GICv3 ITS now emulates the previously missing MOVI and MOVALL commands
* New board model: mori-bmc
* We now support emulating FEAT_LVA
* We now support emulating FEAT_LPA
* We now support emulating FEAT_LPA2. (Note that this is disabled by default for the 'virt' board's versioned machine types prior to 7.0 (ie 'virt-6.2', 'virt-6.1', etc) because Linux kernels prior 
to v5.12 have a bug which means they will not boot on a CPU which has LPA2.)

=== AVR ===

=== Hexagon ===

=== HPPA ===
* Support up to 16 virtual CPUs
* Improved artist graphics driver for HP-UX VDE, HP-UX CDE and Linux framebuffer
* Mouse cursor focus and positioning now works much better under HP-UX X11
* Emulated TOC button can be triggered with "nmi" in the qemu monitor
* Added support for Qemu SCSI boot order option
* Possibility to change system HOSTID for HP-UX and Linux
* Added firmware 16x32 pixel bitmap font for use on HDPI screens
* Ability to choose serial or graphical console as default firmware console

=== Microblaze ===

=== MIPS ===

=== Nios2 ===

=== OpenRISC ===
==== Machines ====
* Support up to 4 cores up from 2 on the OpenRISC sim machine
* Support loading an external initrd image on the OpenRISC sim machine
* OpenRISC sim machine now automatically generates a device tree and passes it to the kernel

=== PowerPC ===
* Updates of PowerNV and pSeries documentation

==== Machines ====

* Deprecation of taihu machine
* Large rework of PPC405 machine
* General cleanup for Mac machines
* PowerNV PHB3/4 cleanups
* PowerNV XIVE improvements
* Extension of the powernv10 machine with XIVE2 ans PHB5 models
* New SLOF for PPC970 and POWER5+
* ppc: nested KVM HV for spapr virtual hypervisor
* spapr: nvdimm: Introduce spapr-nvdimm device

==== Extensions/removal====

* Removal of 401/403 CPUs
* Removal of 601/602 CPUs
* Removal of SoftTLBs support for PPC74x CPUs

* Initial support for PMU
* PMU EBB support
* Rework of powerpc exception handling
* Support for new ISA31 instructions
* Large cleanup of FPU implementation

==== Fixes ====

* Fixes for ivshmem
* Fixes for POWER5+ pseries
* Fixes for FPU exceptions
* Fixes for exception models in MPCx and 60x CPUs
* Fix for e6500 CPU
* Fixes for the 7448 CPU
* Exception and TLB fixes for the 405 CPU
* 603 CPUs fixes
* Book-E exception fixes
* Clang fixes
* VOF installation
* Radix MMU fixes

=== Renesas RX ===

=== Renesas SH ===

=== RISC-V ===
==== Extensions ====
* Add support for ratified 1.0 Vector extension
* Support for the Zve64f and Zve32f extensions
* Drop support for draft 0.7.1 Vector extension
* Support Zfhmin and Zfh extensions
* RISC-V KVM support
* Mark Hypervisor extension as non experimental
* Enable Hypervisor extension by default
* Support for svnapot, svinval and svpbmt extensions
* Experimental support for 128-bit CPUs
* Initial support for XVentanaCondOps custom extension
* stval and mtval support for illegal instructions
* Support for the UXL field in xstatus
* Add support for zfinx, zdinx and zhinx{min} extensions

==== Machines ====
* OpenSBI binary loading support for the Spike machine
* Improve kernel loading for non-Linux platforms
* SiFive PDMA 64-bit support
* Support 32 cores on the virt machine
* Add AIA support for virt machine

==== Fixes ====
* Fix illegal instruction when PMP is disabled
* Corrections for the Vector extension
* Fixes for OpenTitan timer
* Correction of OpenTitan PLIC stride length
* Removal of OpenSBI ELFs
* Fix trap cause for RV32 HS-mode CSR access from RV64 HS-mode
* Fixup OpenTitan SPI address

=== s390x ===

* Support Linux kernel command line length of more than 896 bytes (if the guest kernel supports it, too)
* Emulate the instructions from the "Miscellaneous-Instruction-Extensions Facility 3" (a z15 extension)
* Fixes for various emulated instructions (SLDA, SRDA, SLAG, BRASL, BRCL)

=== SPARC ===

=== Tricore ===

=== x86 ===
* Support for Intel AMX.
==== KVM ====

==== x86_64 ====

==== AMD SEV ====

=== Xtensa ===

=== Device emulation and assignment ===

==== ACPI / SMBIOS ====
* advertise i8042 in FADT if it is present (5334bf5703)
* new ''acpi-erst'' device, for logging guest evens using standard ACPI ERST interface (0ef0506e559)
* added support for new ''processor-id'' SMBIOS option (cb5fb04fe6)
* fixed SMBIOS memory handles overlap for large VMs (8Tb and more) (a379d4550c4)
* added 'SMBIOS 3.0' support in SeaBIOS, in QEMU it's opt-in feature, use ''-machine smbios-ep=3-0'' option to enable it
* fixed regression in ACPI table headers where OEM ID and OEM Table ID weren't padded correctly (748c030f360)
* fixed QEMU crash when started with user provided SLIC table (8cdb99af45)
* arm/virt: add VIOT table to describe virtio-iommu (cf1a5cc935c)
* x86: 'pc' machine type: fixed acpi-index not being migrated which might result in NIC name change if migration happens when guest is asking QEMU for it. Migration should work properly since 7.0 and 
newer machine types, for older machine types migration of acpi-index is broken and can't be fixed for compatibility reasons.

==== Audio ====

==== Block devices ====

==== Graphics ====

==== I2C ====

==== Input devices ====

==== IPMI ====

==== Multi-process QEMU ====

==== Network devices ====

==== NVDIMM ====

==== NVMe ====

===== Emulated NVMe Controller =====

==== PCI/PCIe ====
* Q35: fix PCIe device becoming disabled after migration when ACPI based PCI hotplug is used (6b0969f1ec)
* initial bits of SR/IOV support (250346169)
* arm/virt: fixed PXB interrupt routing (e609301b45)
* arm/virt: support for virtio-mem-pci (b1b87327a9)

==== SCSI ====

==== SD card ====

==== SMBIOS ====

==== TPM ====

==== USB ====

==== VFIO ====

==== virtio ====

==== Xen ====

==== fw_cfg ====

==== 9pfs ====
* [ Fixed 9p server crash] ([ issue #841]) that happened on some 
host systems due to incorrect (system dependant) handling of struct dirent size.
* [ Added support for macOS hosts].

==== virtiofs ====
* Fix for CVE-2022-0358 - behaviour with supplementary groups and SGID directories
* Improved security label support
* The virtiofsd in qemu is now starting to be deprecated; please start using and contributing to [ Rust virtiofsd]

==== Semihosting ====

* We now generate sane numbers for SYS_HEAPINFO under system emulation

=== Audio ===

=== Character devices ===

=== Crypto subsystem ===

=== Authorization subsystem ===

=== GUI ===
* a new [ "-display dbus"] option to export the display for external processes. A [ gtk4-rs 
based widget] is in the works (for future Boxes, virt-viewer etc). Potential other users include remote desktop protocols.

=== GDBStub ===

=== TCG Plugins ===
* new coverage plugin in contrib which support drcov format traces

=== Host support ===

=== Memory backends ===

=== Migration ===

=== Monitor ===

==== QMP ====

==== HMP ====

=== Network ===

=== Block device backends and tools ===
* Fleecing backup has been made more flexible: Fleecing backup means exposing a temporary snapshot of an actively used image, and having the copy-before-write (CBW) filter (or historically the backup 
block job) copy data there from areas written by the guest to the active image, before they are overwritten, so that the snapshot keeps representing the point-in-time state of the disk when the 
snapshot was created.  This snapshot can then be read (either by qemu itself using the backup or mirror block jobs, or by outside users e.g. via an NBD export) to create a backup.  As of qemu 7.0, 
instead of reading the snapshot image directly, it can also be accessed through the new snapshot-access block driver, by installing such a node on top of the CBW filter.  Doing so has some advantages 
over accessing the snapshot image directly; for example, the image can then be in any format (not just COW formats like qcow2), because the CBW filter keeps track of its allocation bitmap.  Once an a
rea has been backed up, users can send a discard request to mark it as done, so that the CBW filter will not potentially copy it to the snapshot image on a subsequent guest write.  Furthermore, the 
CBW filter now has a bitmap parameter that allows limiting its scope as specified by the bitmap at the time the CBW filter node is created.
* A bug in caching block status has been fixed that was causing over-eager treatment of a format layer as all data rather than detecting holes, if an earlier block status query had merely been 
checking for which portions of the backing chain were allocated.  While the bug did not affect guest-visible data, it caused some performance regressions, particularly noticeable and easy to trigger 
when using 'qemu-nbd --allocation-depth'.
* The ''qemu-nbd'' program has gained a new ''--tls-hostname'' parameter to allow TLS validation against a different hostname, such as when setting up TLS through a TCP tunnel, and now supports TLS 
over Unix sockets.
* The SSH driver supports sha256 fingerprints with pre-blockdev command line configuration syntax.
* The SSH driver will print the actual fingerprint and its type when failing to validate a host key.

=== Tracing ===

=== Miscellaneous ===

* The -sandbox 'spawn' filter, will now correctly block use of the clone syscall for spawnnig processes, while allowing thread creation
* The -sandbox 'spawn' filter, will now entirely block use of the clone3 syscall entirely since there is no way to access its flags parameter from seccomp to distinguish thread vs process creation
* The -sandbox 'spawn' filter, will now block setns, unshare and execveat syscalls since they are not desired.

== User-mode emulation ==

* fixed a bug that caused issues mapping the ARM commpage on 32 bit builds

=== binfmt_misc ===

=== Hexagon ===

== TCG ==

User-mode emulation (linux-user, bsd-user) will enforce guest alignment constraints and raise SIGBUS to the guest program as appropriate.

=== ARM ===

Support for for ARMv4 and ARMv5 hosts has been dropped.  These older Arm versions do not have support for misaligned memory access; such support was added to ARMv6.  Since ARMv5 is quite old, it is 
presumed that such systems do not have sufficient RAM to even run QEMU, and so practically speaking no systems are impacted.

== Guest agent ==
* Support Windows 11 for <code>guest-get-osinfo</code> command
* Fix memory leaks in Windows <code>guest-get-fsinfo</code> command

== Build Information ==

=== Python ===

=== GIT submodules ===

=== Container Based Builds ===

* a large number of containers are now updated by lcitool
* TESTS and IMAGES environment variables can be used filter again when building against all docker targets

=== VM Based Builds ===

=== Build Dependencies ===
* xfs libraries are not needed anymore for build, since the only ioctl used by qemu which was defined there got local implementation.  With this, --enable-xfsctl configure option is also gone.

=== Windows ===

=== Testing and CI ===

To generate a diff of this commit:
cvs rdiff -u -r1.294 -r1.295 pkgsrc/emulators/qemu/Makefile
cvs rdiff -u -r1.80 -r1.81 pkgsrc/emulators/qemu/PLIST
cvs rdiff -u -r1.190 -r1.191 pkgsrc/emulators/qemu/distinfo
cvs rdiff -u -r1.10 -r1.11 pkgsrc/emulators/qemu/patches/

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/emulators/qemu/Makefile
diff -u pkgsrc/emulators/qemu/Makefile:1.294 pkgsrc/emulators/qemu/Makefile:1.295
--- pkgsrc/emulators/qemu/Makefile:1.294        Mon Apr 25 16:09:53 2022
+++ pkgsrc/emulators/qemu/Makefile      Thu May 19 16:10:15 2022
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.294 2022/04/25 16:09:53 nia Exp $
+# $NetBSD: Makefile,v 1.295 2022/05/19 16:10:15 ryoon Exp $
-DISTNAME=      qemu-6.2.0
+DISTNAME=      qemu-7.0.0
 CATEGORIES=    emulators
 EXTRACT_SUFX=  .tar.xz
@@ -139,9 +138,11 @@ PLIST.nbd=                 yes
 .elif ${OPSYS} == "Linux"
 USER_EMUL=                     ${UE_ARCHS}
 PLIST.bridge-helper=           yes                      yes
 PLIST.nbd=                     yes               yes
 .elif !empty(MACHINE_PLATFORM:MSunOS-5.11-*)                      yes
 PLIST.nbd=                     yes
 CONFIGURE_ARGS+=               --disable-coroutine-pool
@@ -154,7 +155,7 @@ CONFIGURE_ARGS+=    --enable-plugins
 CONFIGURE_ARGS+=       --disable-plugins
-PLIST_VARS+=           ${UE_ARCHS} bridge-helper keymap nbd pr-helper
+PLIST_VARS+=           ${UE_ARCHS} bridge-helper ga keymap nbd pr-helper
 .for pvar in ${USER_EMUL}
 PLIST.${pvar}=         yes

Index: pkgsrc/emulators/qemu/PLIST
diff -u pkgsrc/emulators/qemu/PLIST:1.80 pkgsrc/emulators/qemu/PLIST:1.81
--- pkgsrc/emulators/qemu/PLIST:1.80    Sun Mar 27 01:44:17 2022
+++ pkgsrc/emulators/qemu/PLIST Thu May 19 16:10:15 2022
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.80 2022/03/27 01:44:17 tnn Exp $
+@comment $NetBSD: PLIST,v 1.81 2022/05/19 16:10:15 ryoon Exp $
@@ -7,7 +7,7 @@ ${PLIST.arm}bin/qemu-arm
@@ -81,10 +81,10 @@ man/man1/qemu.1
@@ -95,6 +95,7 @@ share/doc/qemu/about/deprecated.html
@@ -107,6 +108,11 @@ share/doc/qemu/devel/control-flow-integr
@@ -139,6 +145,7 @@ share/doc/qemu/genindex.html
@@ -151,19 +158,25 @@ share/doc/qemu/interop/qemu-storage-daem
@@ -201,8 +214,10 @@ share/doc/qemu/system/arm/xscale.html
@@ -213,6 +228,7 @@ share/doc/qemu/system/devices/virtio-pme
@@ -369,9 +385,7 @@ share/qemu/openbios-ppc
@@ -402,3 +416,5 @@ share/qemu/vgabios-stdvga.bin

Index: pkgsrc/emulators/qemu/distinfo
diff -u pkgsrc/emulators/qemu/distinfo:1.190 pkgsrc/emulators/qemu/distinfo:1.191
--- pkgsrc/emulators/qemu/distinfo:1.190        Mon Dec 27 10:12:57 2021
+++ pkgsrc/emulators/qemu/distinfo      Thu May 19 16:10:15 2022
@@ -1,25 +1,24 @@
-$NetBSD: distinfo,v 1.190 2021/12/27 10:12:57 nia Exp $
+$NetBSD: distinfo,v 1.191 2022/05/19 16:10:15 ryoon Exp $
 BLAKE2s (palcode-clipper-qemu-5.2.0nb8) = d388c896a80c1cc3d4785c8434d6688bbcfd54c28f7252ce550ab162a0bba321
 SHA512 (palcode-clipper-qemu-5.2.0nb8) = 33695d6001d86a19793a92d5e31775607c4dfc9ab9eea019ea6c4d543a2e11e8c07f83cca4934811a13ef829b528737ea37d9d2aaf66cba6f2746d44d2aa0b43
 Size (palcode-clipper-qemu-5.2.0nb8) = 159808 bytes
-BLAKE2s (qemu-6.2.0.tar.xz) = f8a5e369a65ed0903c271712c81a3c8a1b8893f923dfb815a7db1359fc263ece
-SHA512 (qemu-6.2.0.tar.xz) = e9f8231c9e1cfcc41cb47f10a55d63f6b8aee307af00cf6acf64acb7aa4f49fa7e9d6330703a2abea15d8b7bbaba7d3cb08c83edd98d82642367b527df730817
-Size (qemu-6.2.0.tar.xz) = 115667324 bytes
+BLAKE2s (qemu-7.0.0.tar.xz) = 1d0df58230a436f476df87a7b315ab381743a24837314978f687986d4d0f2a16
+SHA512 (qemu-7.0.0.tar.xz) = 44ecd10c018a3763e1bc87d1d35b98890d0d5636acd69fe9b5cadf5024d5af6a31684d60cbe1c3370e02986434c1fb0ad99224e0e6f6fe7eda169992508157b1
+Size (qemu-7.0.0.tar.xz) = 125117636 bytes
 SHA1 (patch-audio_jackaudio.c) = 0c9e2bea94857007938e16285b721d1495fcb8e1
 SHA1 (patch-backends_tpm_tpm__ioctl.h) = fbd6c877ad605f7120290efbb0ac653c69f351de
 SHA1 (patch-hw-mips-Kconfig) = c7199ad26ac45116ab4d38252db4234ae93bdf9a
 SHA1 (patch-hw-mips-mipssim.c) = 1f682b74b34398b3ff15f9e7f24a85f4b8bb4853
 SHA1 (patch-hw_core_uboot__image.h) = 17eef02349343c5fcfb7a4069cb6f8fd11efcb59
 SHA1 (patch-hw_display_omap__dss.c) = 6b13242f28e32346bc70548c216c578d98fd3420
-SHA1 (patch-hw_i386_acpi-build.c) = 7d23d09f71917cedca4226fd22baa45bcb0f7d33
 SHA1 ( = d9a07a81fe6d3c9e2bd45f41fe876cd927a40ced
 SHA1 (patch-hw_net_etraxfs__eth.c) = e5dd1661d60dbcd27b332403e0843500ba9544bc
 SHA1 (patch-hw_net_xilinx__axienet.c) = ebcd2676d64ce6f31e4a8c976d4fdf530ad5e8b7
 SHA1 (patch-hw_rtc_mc146818rtc.c) = cc7a3b28010966b65b7a16db756226ac2669f310
 SHA1 (patch-hw_scsi_scsi-disk.c) = fdbf2f962a6dcb1a115a7f8a5b8790ff9295fb33
 SHA1 (patch-hw_usb_dev-mtp.c) = 94ddf53a41cc75810cfece1b8aef1831fab4ce43
-SHA1 ( = 8d9df8f4f02efc67412894ad72d0c53702451394
+SHA1 ( = 67fcc428b1953a63e4c0aa32ac1d41ec234a2462
 SHA1 (patch-net_tap-solaris.c) = cc953c9a624dd55ace4e130d0b31bbfb956c17d5
 SHA1 (patch-roms_u-boot-sam460ex_Makefile) = 3a1bbf19b1422c10ebdd819eb0b711fafc78e2f2
 SHA1 (patch-slirp_src_tcp__subr.c) = bd6d80ecf3baeaf6f8458b2361bcb92298d41f7e

Index: pkgsrc/emulators/qemu/patches/
diff -u pkgsrc/emulators/qemu/patches/ pkgsrc/emulators/qemu/patches/
--- pkgsrc/emulators/qemu/patches/        Thu Dec 16 12:59:43 2021
+++ pkgsrc/emulators/qemu/patches/     Thu May 19 16:10:15 2022
@@ -1,12 +1,12 @@
-$NetBSD:,v 1.10 2021/12/16 12:59:43 tnn Exp $
+$NetBSD:,v 1.11 2022/05/19 16:10:15 ryoon Exp $
 * Detect iconv in libc properly for pkgsrc (pkgsrc removes -liconv)
   to fix qemu-system-aarch64 link.
 * Detect curses (non-ncurses{,w} too)
----   2021-12-14 20:42:02.000000000 +0000
+---   2022-04-19 19:10:27.000000000 +0000
-@@ -722,7 +722,7 @@ if have_system and not get_option('curse
+@@ -768,7 +768,7 @@ if have_system and get_option('curses').
        has_curses_h = cc.has_header('curses.h', args: curses_compile_args)
      if has_curses_h
@@ -15,10 +15,10 @@ $NetBSD:,v 1.10 2021/1
        foreach curses_libname : curses_libname_list
          libcurses = cc.find_library(curses_libname,
                                      required: false,
-@@ -740,7 +740,7 @@ if have_system and not get_option('curse
+@@ -786,7 +786,7 @@ if have_system and get_option('curses').
-   if not get_option('iconv').disabled()
+   if get_option('iconv').allowed()
 -    foreach link_args : [ ['-liconv'], [] ]
 +    foreach link_args : [ [], ['-liconv'] ]
        # Programs will be linked with glib and this will bring in libiconv on FreeBSD.

Home | Main Index | Thread Index | Old Index