pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/emulators/qemu qemu: update to 6.2.0
details: https://anonhg.NetBSD.org/pkgsrc/rev/eee0b6eaf59b
branches: trunk
changeset: 771273:eee0b6eaf59b
user: tnn <tnn%pkgsrc.org@localhost>
date: Thu Dec 16 12:59:43 2021 +0000
description:
qemu: update to 6.2.0
Tested on NetBSD-current/amd64 w/nvmm and macOS/aarch64 w/hvf.
pkgsrc note: Recent upstream changes seem to have unintentionally broken the
NetBSD usermode emulation. User-mode emulation is thus disabled until someone
fixes this. Hint: see qemu/bsd-user/freebsd commits by M. Warner Losh.
Changes:
m68k
Improved support for Apple's Nubus, including the ability to load
declaration ROMs and slot IRQ support
The macfb framebuffer device now supports the same video modes found
on a real Quadra 800
Arm
On macOS hosts with Apple Silicon CPUs we now support the 'hvf'
accelerator for running AArch64 guests
M-profile CPUs now emulate trapping on division by zero via CCR.DIV_0_TRP
The pl011 UART model now supports sending 'break'
The Fujitsu A64FX processor model is now supported in TCG ('-cpu a64fx')
The M-profile MVE extension is now supported, and enabled in the Cortex-M55
The deprecated machine names 'raspi2' and 'raspi3' have been removed;
use 'raspi2b' and 'raspi3b' instead
The 'virt' machine now supports an emulated ITS
New machine type: kudo-bmc
The xlnx-zcu102 and xlnx-versal-virt machines now support
BBRAM and eFUSE devices
The 'virt' machine now supports more than 123 CPUs in TCG emulation mode
The pl031 real-time clock device now supports sending RTC_CHANGE QMP events
PowerPC
Improved POWER10 support for the 'powernv' machine
Initial support for POWER10 DD2.0 CPU added
Added support for FORM2 PAPR NUMA descriptions in the "pseries" machine type
RISC-V
Add Zb[abcs] instruction support
Remove RVB support
Fixup virt flash node
Don't override users supplied ISA version
Fixup some CSR accesses
Fix an overflow in the SiFive CLINT
ePMP CSR address updates
SiFive PWM support
Support for RISC-V ACLINT
Support vhost-user and numa mem options on all boards
mstatus.SD bug fix for hypervisor extensions
OpenTitan fix for USB dev address
OpenTitan update to latest bitstream build
Remove the Ibex PLIC
Bug fix of setting mstatus_hs.[SD|FS] bits
Fixes for sifive PDMA
Mark shakti_c as not user creatable
Add support for the experimental J extension
Update the fmin/fmax handling
s390x
Improved storage key emulation
New gen16 CPU features are now enabled automatically
SPARC
Fix for booting sun4m machines with more than 1 CPU
x86
New Snowridge-v4 CPU model, with split-lock-detect feature disabled
KVM
Support for SGX in the virtual machine
New "hv-apicv" CPU property (aliased to "hv-avic")
AMD SEV
Measured launch with direct kernel boot is now possible
virtio
QEMU now fully supports guest memory dumps with virtio-mem.
QEMU now cleanly supports precopy/postcopy migration & background snapshots
9pfs
Fixed an occasional crash when handling 'Twalk' requests
Fixed sub-optimal I/O performance on guest
QMP
New event DEVICE_UNPLUG_GUEST_ERROR
Block device backends and tools
qemu-nbd now defaults to writeback caching
qemu-nbd now has a --selinux-label option for Unix socket label
TCG
plugins now have a bool arg parsing helper and cleaned up argument syntax
the cache plugin is now multi-core aware
diffstat:
emulators/qemu/Makefile | 10 +-
emulators/qemu/PLIST | 16 ++++-
emulators/qemu/distinfo | 13 +--
emulators/qemu/patches/patch-configure | 21 -------
emulators/qemu/patches/patch-include_sysemu_nvmm.h | 33 -----------
emulators/qemu/patches/patch-meson.build | 20 +-----
emulators/qemu/patches/patch-target_i386_nvmm_nvmm-all.c | 47 ----------------
7 files changed, 28 insertions(+), 132 deletions(-)
diffs (280 lines):
diff -r 5d08c8e5bc3f -r eee0b6eaf59b emulators/qemu/Makefile
--- a/emulators/qemu/Makefile Thu Dec 16 12:50:08 2021 +0000
+++ b/emulators/qemu/Makefile Thu Dec 16 12:59:43 2021 +0000
@@ -1,8 +1,6 @@
-# $NetBSD: Makefile,v 1.290 2021/12/08 16:04:18 adam Exp $
+# $NetBSD: Makefile,v 1.291 2021/12/16 12:59:43 tnn Exp $
-DISTNAME= qemu-6.1.0
-PKGNAME= ${DISTNAME:S/-rc/rc/}
-PKGREVISION= 5
+DISTNAME= qemu-6.2.0
CATEGORIES= emulators
MASTER_SITES= https://download.qemu.org/
EXTRACT_SUFX= .tar.xz
@@ -123,9 +121,11 @@
.if ${OPSYS} == "NetBSD"
PLIST.nbd= yes
-. if !exists(/usr/include/machine/trap.h)
+. if !exists(/usr/include/machine/trap.h) \
+ || "1"=="1" # XXX usermode emulation is broken
CONFIGURE_ARGS+= --disable-bsd-user
. else
+CONFIGURE_ARGS+= --enable-bsd-user
USER_EMUL= i386 x86_64
. endif
.elif !empty(OPSYS:M*BSD) || ${OPSYS} == "DragonFly"
diff -r 5d08c8e5bc3f -r eee0b6eaf59b emulators/qemu/PLIST
--- a/emulators/qemu/PLIST Thu Dec 16 12:50:08 2021 +0000
+++ b/emulators/qemu/PLIST Thu Dec 16 12:59:43 2021 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.78 2021/08/29 01:53:06 mcf Exp $
+@comment $NetBSD: PLIST,v 1.79 2021/12/16 12:59:43 tnn Exp $
bin/elf2dmp
${PLIST.aarch64}bin/qemu-aarch64
${PLIST.aarch64_be}bin/qemu-aarch64_be
@@ -124,14 +124,17 @@
share/doc/qemu/devel/secure-coding-practices.html
share/doc/qemu/devel/stable-process.html
share/doc/qemu/devel/style.html
+share/doc/qemu/devel/submitting-a-patch.html
+share/doc/qemu/devel/submitting-a-pull-request.html
share/doc/qemu/devel/tcg-icount.html
share/doc/qemu/devel/tcg-plugins.html
share/doc/qemu/devel/tcg.html
share/doc/qemu/devel/testing.html
share/doc/qemu/devel/tracing.html
+share/doc/qemu/devel/trivial-patches.html
share/doc/qemu/devel/ui.html
share/doc/qemu/devel/vfio-migration.html
-share/doc/qemu/devel/writing-qmp-commands.html
+share/doc/qemu/devel/writing-monitor-commands.html
share/doc/qemu/genindex.html
share/doc/qemu/index.html
share/doc/qemu/interop/barrier.html
@@ -151,8 +154,12 @@
share/doc/qemu/objects.inv
share/doc/qemu/search.html
share/doc/qemu/searchindex.js
+share/doc/qemu/specs/acpi_cpu_hotplug.html
share/doc/qemu/specs/acpi_hest_ghes.html
share/doc/qemu/specs/acpi_hw_reduced_hotplug.html
+share/doc/qemu/specs/acpi_mem_hotplug.html
+share/doc/qemu/specs/acpi_nvdimm.html
+share/doc/qemu/specs/acpi_pci_hotplug.html
share/doc/qemu/specs/index.html
share/doc/qemu/specs/ppc-spapr-numa.html
share/doc/qemu/specs/ppc-spapr-xive.html
@@ -200,13 +207,17 @@
share/doc/qemu/system/devices/net.html
share/doc/qemu/system/devices/nvme.html
share/doc/qemu/system/devices/usb.html
+share/doc/qemu/system/devices/vhost-user-rng.html
share/doc/qemu/system/devices/vhost-user.html
share/doc/qemu/system/devices/virtio-pmem.html
share/doc/qemu/system/gdb.html
share/doc/qemu/system/generic-loader.html
share/doc/qemu/system/guest-loader.html
+share/doc/qemu/system/i386/cpu.html
+share/doc/qemu/system/i386/kvm-pv.html
share/doc/qemu/system/i386/microvm.html
share/doc/qemu/system/i386/pc.html
+share/doc/qemu/system/i386/sgx.html
share/doc/qemu/system/images.html
share/doc/qemu/system/index.html
share/doc/qemu/system/invocation.html
@@ -352,6 +363,7 @@
share/qemu/linuxboot.bin
share/qemu/linuxboot_dma.bin
share/qemu/multiboot.bin
+share/qemu/multiboot_dma.bin
share/qemu/npcm7xx_bootrom.bin
share/qemu/openbios-ppc
share/qemu/openbios-sparc32
diff -r 5d08c8e5bc3f -r eee0b6eaf59b emulators/qemu/distinfo
--- a/emulators/qemu/distinfo Thu Dec 16 12:50:08 2021 +0000
+++ b/emulators/qemu/distinfo Thu Dec 16 12:59:43 2021 +0000
@@ -1,13 +1,12 @@
-$NetBSD: distinfo,v 1.188 2021/10/26 10:23:59 nia Exp $
+$NetBSD: distinfo,v 1.189 2021/12/16 12:59:43 tnn 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.1.0.tar.xz) = f323be1f281ea362e741c1a9870ea0b0d6cbfaaebea4527ae0658934c0ccc57f
-SHA512 (qemu-6.1.0.tar.xz) = 3378ae21c75b77ee6a759827f1fcf7b2a50a0fef07e3b0e89117108022a8d8655fa977e4d65596f4f24f7c735c6594d44b0c6f69732ea4465e88a7406b1d5d3c
-Size (qemu-6.1.0.tar.xz) = 111258808 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
SHA1 (patch-backends_tpm_tpm__ioctl.h) = fbd6c877ad605f7120290efbb0ac653c69f351de
-SHA1 (patch-configure) = 44c9b9f6e1f25007eed7335bb9c5987efd2ea02c
SHA1 (patch-hw-mips-Kconfig) = c7199ad26ac45116ab4d38252db4234ae93bdf9a
SHA1 (patch-hw-mips-mipssim.c) = 1f682b74b34398b3ff15f9e7f24a85f4b8bb4853
SHA1 (patch-hw_core_uboot__image.h) = 17eef02349343c5fcfb7a4069cb6f8fd11efcb59
@@ -19,10 +18,8 @@
SHA1 (patch-hw_rtc_mc146818rtc.c) = cc7a3b28010966b65b7a16db756226ac2669f310
SHA1 (patch-hw_scsi_scsi-disk.c) = fdbf2f962a6dcb1a115a7f8a5b8790ff9295fb33
SHA1 (patch-hw_usb_dev-mtp.c) = 94ddf53a41cc75810cfece1b8aef1831fab4ce43
-SHA1 (patch-include_sysemu_nvmm.h) = 2cf9ea36c77570136b0678fe3b1c126ca7fa04cd
-SHA1 (patch-meson.build) = 35f4d563e99dcc014a011bb4c7cddefac852d4cf
+SHA1 (patch-meson.build) = 8d9df8f4f02efc67412894ad72d0c53702451394
SHA1 (patch-net_tap-solaris.c) = cc953c9a624dd55ace4e130d0b31bbfb956c17d5
SHA1 (patch-roms_u-boot-sam460ex_Makefile) = 3a1bbf19b1422c10ebdd819eb0b711fafc78e2f2
SHA1 (patch-slirp_src_tcp__subr.c) = bd6d80ecf3baeaf6f8458b2361bcb92298d41f7e
-SHA1 (patch-target_i386_nvmm_nvmm-all.c) = 8f4b51a6460090d7826af1ae02840a208767345b
SHA1 (patch-target_sparc_translate.c) = 7ec2add2fd808facb48b9a66ccc345599251bf76
diff -r 5d08c8e5bc3f -r eee0b6eaf59b emulators/qemu/patches/patch-configure
--- a/emulators/qemu/patches/patch-configure Thu Dec 16 12:50:08 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-$NetBSD: patch-configure,v 1.34 2021/09/10 13:10:58 nia Exp $
-
-Allow the compiler from NetBSD 9.0.
-
-Requiring a minor version of GCC makes no sense, and indeed,
-the requirement seems to be 7.5.0 because "Ubuntu has that
-version"...
-
-https://github.com/qemu/qemu/commit/56208a0d473c6db263cc333c787ca48b502d72ab
-
---- configure.orig 2021-08-24 17:35:40.000000000 +0000
-+++ configure
-@@ -2099,7 +2099,7 @@ cat > $TMPC << EOF
- # endif
- # endif
- #elif defined(__GNUC__) && defined(__GNUC_MINOR__)
--# if __GNUC__ < 7 || (__GNUC__ == 7 && __GNUC_MINOR__ < 5)
-+# if __GNUC__ < 7
- # error You need at least GCC v7.5.0 to compile QEMU
- # endif
- #else
diff -r 5d08c8e5bc3f -r eee0b6eaf59b emulators/qemu/patches/patch-include_sysemu_nvmm.h
--- a/emulators/qemu/patches/patch-include_sysemu_nvmm.h Thu Dec 16 12:50:08 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-$NetBSD: patch-include_sysemu_nvmm.h,v 1.5 2021/08/27 03:32:37 ryoon Exp $
-
-* Do not use CONFIG_NVMM directly to avoid pragma poison error.
-
---- include/sysemu/nvmm.h.orig 2021-08-04 16:29:07.000000000 +0000
-+++ include/sysemu/nvmm.h
-@@ -13,14 +13,22 @@
- #include "config-host.h"
- #include "qemu-common.h"
-
--#ifdef CONFIG_NVMM
-+#ifdef NEED_CPU_H
-+# ifdef CONFIG_NVMM
-+# define CONFIG_NVMM_IS_POSSIBLE
-+# endif
-+#else
-+# define CONFIG_NVMM_IS_POSSIBLE
-+#endif
-+
-+#ifdef CONFIG_NVMM_IS_POSSIBLE
-
- int nvmm_enabled(void);
-
--#else /* CONFIG_NVMM */
-+#else /* CONFIG_NVMM_IS_POSSIBLE */
-
- #define nvmm_enabled() (0)
-
--#endif /* CONFIG_NVMM */
-+#endif /* CONFIG_NVMM_IS_POSSIBLE */
-
--#endif /* CONFIG_NVMM */
-+#endif /* QEMU_NVMM_H */
diff -r 5d08c8e5bc3f -r eee0b6eaf59b emulators/qemu/patches/patch-meson.build
--- a/emulators/qemu/patches/patch-meson.build Thu Dec 16 12:50:08 2021 +0000
+++ b/emulators/qemu/patches/patch-meson.build Thu Dec 16 12:59:43 2021 +0000
@@ -1,24 +1,12 @@
-$NetBSD: patch-meson.build,v 1.9 2021/09/05 20:58:16 nia Exp $
+$NetBSD: patch-meson.build,v 1.10 2021/12/16 12:59:43 tnn Exp $
-* Add NetBSD support.
* Detect iconv in libc properly for pkgsrc (pkgsrc removes -liconv)
to fix qemu-system-aarch64 link.
* Detect curses (non-ncurses{,w} too)
---- meson.build.orig 2021-08-24 17:35:41.000000000 +0000
+--- meson.build.orig 2021-12-14 20:42:02.000000000 +0000
+++ meson.build
-@@ -237,9 +237,7 @@ if not get_option('hax').disabled()
- endif
- endif
- if targetos == 'netbsd'
-- if cc.has_header_symbol('nvmm.h', 'nvmm_cpu_stop', required: get_option('nvmm'))
-- nvmm = cc.find_library('nvmm', required: get_option('nvmm'))
-- endif
-+ nvmm = cc.find_library('nvmm', required: get_option('nvmm'))
- if nvmm.found()
- accelerators += 'CONFIG_NVMM'
- endif
-@@ -613,7 +611,7 @@ if have_system and not get_option('curse
+@@ -722,7 +722,7 @@ if have_system and not get_option('curse
has_curses_h = cc.has_header('curses.h', args: curses_compile_args)
endif
if has_curses_h
@@ -27,7 +15,7 @@
foreach curses_libname : curses_libname_list
libcurses = cc.find_library(curses_libname,
required: false,
-@@ -631,7 +629,7 @@ if have_system and not get_option('curse
+@@ -740,7 +740,7 @@ if have_system and not get_option('curse
endif
endif
if not get_option('iconv').disabled()
diff -r 5d08c8e5bc3f -r eee0b6eaf59b emulators/qemu/patches/patch-target_i386_nvmm_nvmm-all.c
--- a/emulators/qemu/patches/patch-target_i386_nvmm_nvmm-all.c Thu Dec 16 12:50:08 2021 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-$NetBSD: patch-target_i386_nvmm_nvmm-all.c,v 1.4 2021/09/05 20:58:16 nia Exp $
-
-Re-add NetBSD 9 support.
-
---- target/i386/nvmm/nvmm-all.c.orig 2021-08-24 17:35:41.000000000 +0000
-+++ target/i386/nvmm/nvmm-all.c
-@@ -750,7 +750,11 @@ nvmm_vcpu_loop(CPUState *cpu)
- nvmm_vcpu_pre_run(cpu);
-
- if (qatomic_read(&cpu->exit_request)) {
-+#if NVMM_USER_VERSION >= 2
- nvmm_vcpu_stop(vcpu);
-+#else
-+ qemu_cpu_kick_self();
-+#endif
- }
-
- /* Read exit_request before the kernel reads the immediate exit flag */
-@@ -767,6 +771,7 @@ nvmm_vcpu_loop(CPUState *cpu)
- switch (exit->reason) {
- case NVMM_VCPU_EXIT_NONE:
- break;
-+#if NVMM_USER_VERSION >= 2
- case NVMM_VCPU_EXIT_STOPPED:
- /*
- * The kernel cleared the immediate exit flag; cpu->exit_request
-@@ -775,6 +780,7 @@ nvmm_vcpu_loop(CPUState *cpu)
- smp_wmb();
- qcpu->stop = true;
- break;
-+#endif
- case NVMM_VCPU_EXIT_MEMORY:
- ret = nvmm_handle_mem(mach, vcpu);
- break;
-@@ -888,8 +894,12 @@ nvmm_ipi_signal(int sigcpu)
- {
- if (current_cpu) {
- struct qemu_vcpu *qcpu = get_qemu_vcpu(current_cpu);
-+#if NVMM_USER_VERSION >= 2
- struct nvmm_vcpu *vcpu = &qcpu->vcpu;
- nvmm_vcpu_stop(vcpu);
-+#else
-+ qcpu->stop = true;
-+#endif
- }
- }
-
Home |
Main Index |
Thread Index |
Old Index