diff --git a/_service b/_service index 190a15c..853a6a2 100644 --- a/_service +++ b/_service @@ -1,8 +1,8 @@ git - https://github.com/opensuse/qemu.git - factory + https://gitlab.suse.de/virtualization/qemu.git + v8.2-sle15sp6 @PARENT_TAG@ [v]?([^-+a-z]+)(.*) \1 diff --git a/_servicedata b/_servicedata index c270981..fef024f 100644 --- a/_servicedata +++ b/_servicedata @@ -1,4 +1,6 @@ https://github.com/opensuse/qemu.git - 0dbd22c0dd1c7781582a94bc4d4f55daaab27158 \ No newline at end of file + 3d43249322bfbd34777557b4b29fbafa72983928 + https://gitlab.suse.de/virtualization/qemu.git + c44e91d4c758029dccdba8d9449bfc69bdbdc6d2 \ No newline at end of file diff --git a/common.inc b/common.inc index 6817e30..b407427 100644 --- a/common.inc +++ b/common.inc @@ -1,6 +1,6 @@ %define _buildshell /bin/bash -%define sbver 1.16.3_3_gc13ff2cd +%define sbver 1.16.3_3_ga95067eb %define srcdir %{_builddir}/%buildsubdir %define blddir %srcdir/build @@ -46,12 +46,6 @@ %bcond_with xdp %endif -%ifarch %ix86 x86_64 -%bcond_without vmsr_helper -%else -%define vmsr_helper 0 -%endif - # Make it possible to build without spice (for SLE/Leap Micro) %bcond_without spice @@ -106,152 +100,3 @@ Many options are available for defining the emulated environment, including\ traditional devices, direct host device access, and interfaces specific to\ virtualization. -%define disable_everything \\\ - --audio-drv-list= \\\ - --disable-af-xdp \\\ - --disable-alsa \\\ - --disable-attr \\\ - --disable-auth-pam \\\ - --disable-avx2 \\\ - --disable-avx512bw \\\ - --disable-blkio \\\ - --disable-block-drv-whitelist-in-tools \\\ - --disable-bochs \\\ - --disable-bpf \\\ - --disable-brlapi \\\ - --disable-bsd-user \\\ - --disable-bzip2 \\\ - --disable-cap-ng \\\ - --disable-capstone \\\ - --disable-cfi \\\ - --disable-cfi-debug \\\ - --disable-cloop \\\ - --disable-cocoa \\\ - --disable-colo-proxy \\\ - --disable-coreaudio \\\ - --disable-coroutine-pool \\\ - --disable-crypto-afalg \\\ - --disable-curl \\\ - --disable-curses \\\ - --disable-dbus-display \\\ - --disable-debug-graph-lock \\\ - --disable-debug-info \\\ - --disable-debug-mutex \\\ - --disable-debug-remap \\\ - --disable-debug-tcg \\\ - --disable-dmg \\\ - --disable-docs \\\ - --disable-download \\\ - --disable-dsound \\\ - --disable-fdt \\\ - --disable-fuse \\\ - --disable-fuse-lseek \\\ - --disable-gcrypt \\\ - --disable-gettext \\\ - --disable-gio \\\ - --disable-glusterfs \\\ - --disable-gnutls \\\ - --disable-gtk \\\ - --disable-gtk-clipboard \\\ - --disable-guest-agent \\\ - --disable-guest-agent-msi \\\ - --disable-hv-balloon \\\ - --disable-hvf \\\ - --disable-iconv \\\ - --disable-jack \\\ - --disable-kvm \\\ - --disable-l2tpv3 \\\ - --disable-libdaxctl \\\ - --disable-libdw \\\ - --disable-libiscsi \\\ - --disable-libkeyutils \\\ - --disable-libkeyutils \\\ - --disable-libnfs \\\ - --disable-libpmem \\\ - --disable-libssh \\\ - --disable-libudev \\\ - --disable-libusb \\\ - --disable-linux-aio \\\ - --disable-linux-io-uring \\\ - --disable-linux-user \\\ - --disable-lto \\\ - --disable-lzfse \\\ - --disable-lzo \\\ - --disable-malloc-trim \\\ - --disable-membarrier \\\ - --disable-module-upgrades \\\ - --disable-modules \\\ - --disable-mpath \\\ - --disable-multiprocess \\\ - --disable-netmap \\\ - --disable-nettle \\\ - --disable-numa \\\ - --disable-nvmm \\\ - --disable-opengl \\\ - --disable-oss \\\ - --disable-pa \\\ - --disable-parallels \\\ - --disable-pie \\\ - --disable-pipewire \\\ - --disable-pixman \\\ - --disable-plugins \\\ - --disable-png \\\ - --disable-qcow1 \\\ - --disable-qed \\\ - --disable-qom-cast-debug \\\ - --disable-qpl \\\ - --disable-rbd \\\ - --disable-rdma \\\ - --disable-relocatable \\\ - --disable-replication \\\ - --disable-rng-none \\\ - --disable-rutabaga-gfx \\\ - --disable-safe-stack \\\ - --disable-sanitizers \\\ - --disable-sdl \\\ - --disable-sdl-image \\\ - --disable-seccomp \\\ - --disable-selinux \\\ - --disable-slirp \\\ - --disable-slirp-smbd \\\ - --disable-smartcard \\\ - --disable-snappy \\\ - --disable-sndio \\\ - --disable-sparse \\\ - --disable-spice \\\ - --disable-spice-protocol \\\ - --disable-strip \\\ - --disable-system \\\ - --disable-tcg \\\ - --disable-tcg-interpreter \\\ - --disable-tools \\\ - --disable-tpm \\\ - --disable-tsan \\\ - --disable-u2f \\\ - --disable-uadk \\\ - --disable-usb-redir \\\ - --disable-user \\\ - --disable-vde \\\ - --disable-vdi \\\ - --disable-vhdx \\\ - --disable-vhost-crypto \\\ - --disable-vhost-kernel \\\ - --disable-vhost-net \\\ - --disable-vhost-user \\\ - --disable-vhost-user-blk-server \\\ - --disable-vhost-vdpa \\\ - --disable-virglrenderer \\\ - --disable-virtfs \\\ - --disable-vnc \\\ - --disable-vnc-jpeg \\\ - --disable-vnc-sasl \\\ - --disable-vpc \\\ - --disable-vte \\\ - --disable-vvfat \\\ - --disable-werror \\\ - --disable-whpx \\\ - --disable-xen \\\ - --disable-xen-pci-passthrough \\\ - --disable-xkbcommon \\\ - --disable-zstd \\\ - --without-default-devices diff --git a/qemu-8.2.7.obscpio b/qemu-8.2.7.obscpio new file mode 100644 index 0000000..ed6b2d9 --- /dev/null +++ b/qemu-8.2.7.obscpio @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91713f10d1a7f13bec0f917d026b895f1c89dfac2437cd45586d30ba0e3ce5ce +size 848403471 diff --git a/qemu-9.1.0.obscpio b/qemu-9.1.0.obscpio deleted file mode 100644 index 00351cd..0000000 --- a/qemu-9.1.0.obscpio +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:995e37eb713e041c4e1a3fed033e14b09fbc49ec887a334f24d818b34ed20de5 -size 850211343 diff --git a/qemu-linux-user.spec b/qemu-linux-user.spec index 6b587ab..edb5948 100644 --- a/qemu-linux-user.spec +++ b/qemu-linux-user.spec @@ -27,7 +27,7 @@ URL: https://www.qemu.org/ Summary: CPU emulator for user space License: BSD-2-Clause AND BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT Group: System/Emulators/PC -Version: 9.1.0 +Version: 8.2.7 Release: 0 Source0: qemu-%{version}.tar.xz Source1: common.inc @@ -88,6 +88,7 @@ syscall layer occurs on the native hardware and operating system. %_bindir/qemu-mipsel %_bindir/qemu-mipsn32 %_bindir/qemu-mipsn32el +%_bindir/qemu-nios2 %_bindir/qemu-or1k %_bindir/qemu-ppc %_bindir/qemu-ppc64 @@ -136,6 +137,7 @@ cd %blddir # for them. # TODO: Check whether we want to enable the followings: +# * avx512f # * debug-info # * fuse # * malloc-trim @@ -165,7 +167,142 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g --prefix=%_prefix \ --sysconfdir=%_sysconfdir \ --with-pkgversion="%(echo '%{distro}' | sed 's/ (.*)//')" \ - %{disable_everything} \ + --disable-af-xdp \ + --disable-alsa \ + --disable-attr \ + --disable-auth-pam \ + --disable-avx2 \ + --disable-avx512f \ + --disable-block-drv-whitelist-in-tools \ + --disable-bochs \ + --disable-bpf \ + --disable-brlapi \ + --disable-bsd-user \ + --disable-bzip2 \ + --disable-cap-ng \ + --disable-capstone \ + --disable-cfi \ + --disable-cfi-debug \ + --disable-cloop \ + --disable-cocoa \ + --disable-coreaudio \ + --disable-coroutine-pool \ + --disable-crypto-afalg \ + --disable-curl \ + --disable-curses \ + --disable-dbus-display \ + --disable-debug-info \ + --disable-debug-mutex \ + --disable-debug-tcg \ + --disable-dmg \ + --disable-docs \ + --disable-download \ + --disable-dsound \ + --disable-fdt \ + --disable-fuse \ + --disable-fuse-lseek \ + --disable-gcrypt \ + --disable-gettext \ + --disable-gio \ + --disable-glusterfs \ + --disable-gnutls \ + --disable-gtk \ + --disable-guest-agent \ + --disable-guest-agent-msi \ + --disable-hv-balloon \ + --disable-hvf \ + --disable-iconv \ + --disable-jack \ + --disable-kvm \ + --disable-l2tpv3 \ + --disable-libdaxctl \ + --disable-libiscsi \ + --disable-libkeyutils \ + --disable-libnfs \ + --disable-libpmem \ + --disable-libssh \ + --disable-libudev \ + --disable-libusb \ + --disable-linux-aio \ + --disable-linux-io-uring \ + --disable-linux-user \ + --disable-live-block-migration \ + --disable-lto \ + --disable-lzfse \ + --disable-lzo \ + --disable-malloc-trim \ + --disable-membarrier \ + --disable-module-upgrades \ + --disable-modules \ + --disable-mpath \ + --disable-multiprocess \ + --disable-netmap \ + --disable-nettle \ + --disable-numa \ + --disable-nvmm \ + --disable-opengl \ + --disable-oss \ + --disable-pa \ + --disable-parallels \ + --disable-pie \ + --disable-pipewire \ + --disable-pixman \ + --disable-plugins \ + --disable-png \ + --disable-pvrdma \ + --disable-qcow1 \ + --disable-qed \ + --disable-qom-cast-debug \ + --disable-rbd \ + --disable-rdma \ + --disable-relocatable \ + --disable-replication \ + --disable-rng-none \ + --disable-rutabaga-gfx \ + --disable-safe-stack \ + --disable-sanitizers \ + --disable-sdl \ + --disable-sdl-image \ + --disable-seccomp \ + --disable-selinux \ + --disable-slirp \ + --disable-slirp-smbd \ + --disable-smartcard \ + --disable-snappy \ + --disable-sparse \ + --disable-spice \ + --disable-spice-protocol \ + --disable-strip \ + --disable-system \ + --disable-tcg \ + --disable-tcg-interpreter \ + --disable-tools \ + --disable-tpm \ + --disable-u2f \ + --disable-usb-redir \ + --disable-user \ + --disable-vde \ + --disable-vdi \ + --disable-vhost-crypto \ + --disable-vhost-kernel \ + --disable-vhost-net \ + --disable-vhost-user \ + --disable-vhost-user-blk-server \ + --disable-vhost-vdpa \ + --disable-virglrenderer \ + --disable-virtfs \ + --disable-vnc \ + --disable-vnc-jpeg \ + --disable-vnc-sasl \ + --disable-vte \ + --disable-vvfat \ + --disable-werror \ + --disable-whpx \ + --disable-xen \ + --disable-xen-pci-passthrough \ + --disable-xkbcommon \ + --disable-zstd \ + --without-default-devices \ %if %{with system_membarrier} --enable-membarrier \ %endif @@ -207,7 +344,7 @@ scripts/qemu-binfmt-conf.sh --systemd ALL --persistent yes --preserve-argv0 yes cd %blddir %ifarch aarch64 %ix86 ppc ppc64 ppc64le riscv64 s390x x86_64 -./qemu-%{qemu_arch} %_bindir/ls > /dev/null +%{qemu_arch}-linux-user/qemu-%{qemu_arch} %_bindir/ls > /dev/null %endif %make_build check-softfloat diff --git a/qemu.changes b/qemu.changes index 2c2061c..99b2029 100644 --- a/qemu.changes +++ b/qemu.changes @@ -1,181 +1,135 @@ ------------------------------------------------------------------- -Wed Oct 16 14:39:46 UTC 2024 - dfaggioli@suse.com +Thu Oct 17 14:49:23 UTC 2024 - dfaggioli@suse.com -- Bug and CVE fixes: - * softmmu/physmem: fix memory leak in dirty_memory_extend() +- Bugfixes and CVEs: + * hw/usb/hcd-ohci: Fix #1510, #303: pid not IN or OUT (bsc#1230834, CVE-2024-8354) * softmmu: Support concurrent bounce buffers (bsc#1230915, CVE-2024-8612) - * accel/kvm: check for KVM_CAP_READONLY_MEM on VM (bsc#1231519) + * system/physmem: Per-AddressSpace bounce buffering (bsc#1230915, CVE-2024-8612) + * system/physmem: Propagate AddressSpace to MapClient helpers (bsc#1230915, CVE-2024-8612) + * system/physmem: Replace qemu_mutex_lock() calls with QEMU_LOCK_GUARD (bsc#1230915, CVE-2024-8612) ------------------------------------------------------------------- -Tue Oct 15 17:02:49 UTC 2024 - dfaggioli@suse.com +Tue Oct 15 17:15:26 UTC 2024 - dfaggioli@suse.com -- Fix bsc#1231519 and bsc#1230140: - * accel/kvm: check for KVM_CAP_READONLY_MEM on VM - * target/ppc: Fix lxvx/stxvx facility check +- Update version to 8.2.7 + * Full changelog here: + https://lore.kernel.org/qemu-devel/d9ff276f-f1ba-4e90-8343-a7a0dc2bf305@tls.msk.ru/ + * Fixes: + bsc#1229007, CVE-2024-7409 + bsc#1224132, CVE-2024-4693 + * Some backports: + gitlab: fix logic for changing docker tag on stable branches + ui/sdl2: set swap interval explicitly when OpenGL is enabled + hw/intc/arm_gic: fix spurious level triggered interrupts + hw/audio/virtio-sound: fix heap buffer overflow + tests/docker: update debian i686 and mipsel images to bookworm + tests/docker: remove debian-armel-cross + hw/display/vhost-user-gpu.c: fix vhost_user_gpu_chr_read() + crypto: check gnutls & gcrypt support the requested pbkdf hash + crypto: run qcrypto_pbkdf2_count_iters in a new thread + softmmu/physmem: fix memory leak in dirty_memory_extend() + target/ppc: Fix migration of CPUs with TLB_EMB TLB type + gitlab: migrate the s390x custom machine to 22.04 + target/hppa: Fix PSW V-bit packaging in cpu_hppa_get for hppa64 + hw/audio/virtio-snd: fix invalid param check + virtio-pci: Fix the use of an uninitialized irqfd ------------------------------------------------------------------- -Wed Sep 11 17:42:03 UTC 2024 - dfaggioli@suse.com +Tue Sep 17 10:00:55 UTC 2024 - dfaggioli@suse.com -- Re-enable vhdx support in qemu-img: - * [openSUSE][RPM] explicitly enable qemu-img support for vhdx and vpc +- Fix bsc#1229929, bsc#1230140 (patch already submitted upstream): + * [openSUSE] target/ppc: Fix lxvx/stxvx facility check (bsc#1229929) ------------------------------------------------------------------- -Thu Sep 05 16:22:44 UTC 2024 - dfaggioli@suse.com - -- Spec file fixing (for properly building 9.1) and improvements: - * [openSUSE][RPM] Consolidate disabling all features during 'configure' in a macro - * [openSUSE][RPM] Consolidate handling of conditional features - * [openSUSE][RPM] (commented out) services for qemu-pr-helper - * [openSUSE][RPM] package qemu-vmsr-helper - * [openSUSE][RPM] configure: Fix with-pkgversion option - * [openSUSE][RPM] Exclude riscv edk2 files - * [openSUSE][RPM] Remove nios2 - * [openSUSE][RPM] Update tests acpi path - * [openSUSE][RPM] configure: remove options for removed features - -------------------------------------------------------------------- -Thu Sep 05 15:16:09 UTC 2024 - dfaggioli@suse.com - -- Update to version 9.1.0: - Full changelog here: https://wiki.qemu.org/ChangeLog/9.1 - Some of the most notable features: - * migration: compression offload support via Intel In-Memory Analytics - Accelerator (IAA) or User Space Accelerator Development Kit (UADK), - along with enhanced support for postcopy failure recovery - * virtio: support for VIRTIO_F_NOTIFICATION_DATA, allowing guest - drivers to provide additional data as part of sending device notifications - for performance/debug purposes - * guest-agent: support for guest-network-get-route command on linux, - guest-ssh-* commands on Windows, and enhanced CLI support for - configuring allowed/blocked commands - * block: security fixes for QEMU NBD server and NBD TLS encryption - * ARM: emulation support for FEAT_NMI, FEAT_CSV2_3, FEAT_ETS2, - FEAT_Spec_FPACC, FEAT_WFxT, FEAT_Debugv8p8 architecture features - * ARM: nested/two-stage page table support for emulated SMMUv3 - * ARM: xilinx_zynq board support for cache controller and multiple - CPUs, and B-L475E-IOT01A board support for a DM163 display - * LoongArch: support for directly booting an ELF kernel and for running - up to 256 vCPUs via extioi virt extension - * LoongArch: enhanced debug/GDB support - * RISC-V: support for version 1.13 of privileged architecture specification - * RISC-V: support for Zve32x, Zve64x, Zimop, Zcmop, Zama16b, Zabha, - Zawrs, and Smcntrpmf extensions - * RISC-V: enhanced debug/GDB support and general fixes - * SPARC: emulation support for FMAF, IMA, VIS3, and VIS4 architecture - features - * x86: KVM support for running AMD SEV-SNP guests - * x86: CPU emulation support for Icelake-Server-v7, SapphireRapids-v3, - and SierraForest - - The following bugs/CVEs were solved (in 9.0.x) with backports that are - now included in 9.1 upstream: - - CVE-2024-4467 (bsc#1227322) - - CVE-2024-7409 (bsc#1229007) - -------------------------------------------------------------------- -Tue Aug 27 17:15:25 UTC 2024 - dfaggioli@suse.com +Tue Aug 27 16:38:53 UTC 2024 - dfaggioli@suse.com - Fix bsc#1221812: * [openSUSE] block: Reschedule query-block during qcow2 invalidation (bsc#1221812) -- Fixup a previous patch (cure a build warning): +- Fixup old patches and infra issues: * [openSUSE] fixup patch "pc: q35: Allow 1024 cpus for old machine types" + * [openSUSE] Point submodule branches to gitlab ------------------------------------------------------------------- -Tue Aug 27 16:45:36 UTC 2024 - dfaggioli@suse.com +Tue Aug 13 15:58:46 UTC 2024 - dfaggioli@suse.com -- Infra improvement: - * [openSUSE] Workflows for Virtualization:Staging:TDX +- Fix bsc#1229007, CVE-2024-7409: + * nbd/server: CVE-2024-7409: Close stray clients at server-stop (bsc#1229007) + * nbd/server: CVE-2024-7409: Drop non-negotiating clients (bsc#1229007) + * nbd/server: CVE-2024-7409: Cap default max-connections to 100 (bsc#1229007) + * nbd/server: Plumb in new args to nbd_client_add() (bsc#1229007, CVE-2024-7409) + * nbd: Minor style and typo fixes (bsc#1229007, CVE-2024-7409) ------------------------------------------------------------------- -Wed Jul 24 10:00:54 UTC 2024 - dfaggioli@suse.com +Mon Aug 12 16:47:31 UTC 2024 - dfaggioli@suse.com -- roms: Build ipxe with NO_WERROR=1 (bsc#1227960) -- Update to version 9.0.2: - Full list of backports here: - https://lore.kernel.org/qemu-devel/1718081053.366429.1238758.nullmailer@tls.msk.ru/ - - A selection of them is reported here too: +- Update to version 8.2.6: + + Full backport lists (from the various releases) here: + https://lore.kernel.org/qemu-devel/1721203806.547734.831464.nullmailer@tls.msk.ru/ + + Some of the upstream backports are: hw/nvme: fix number of PIDs for FDP RUH update sphinx/qapidoc: Fix to generate doc for explicit, unboxed arguments char-stdio: Restore blocking mode of stdout on exit virtio: remove virtio_tswap16s() call in vring_packed_event_read() virtio-pci: Fix the failure process in kvm_virtio_pci_vector_use_one() - tcg/optimize: Fix TCG_COND_TST* simplification of setcond2 block: Parse filenames only when explicitly requested iotests/270: Don't store data-file with json: prefix in image iotests/244: Don't store data-file with protocol in image - qcow2: Don't open data_file with BDRV_O_NO_IO - tests: add testing of parameter=3D1 for SMP topology (bsc#1228169) - hw/core: allow parameter=3D1 for SMP topology on any machine + qcow2: Don't open data_file with BDRV_O_NO_IO (bsc#1227322, CVE-2024-4467) + target/arm: Fix FJCVTZS vs flush-to-zero + target/arm: Fix VCMLA Dd, Dn, Dm[idx] + i386/cpu: fixup number of addressable IDs for processor cores in the physical package + tests: Update our CI to use CentOS Stream 9 instead of 8 + migration: Fix file migration with fdset + tcg/loongarch64: Fix tcg_out_movi vs some pcrel pointers + target/sparc: use signed denominator in sdiv helper + linux-user: Make TARGET_NR_setgroups affect only the current thread + accel/tcg: Fix typo causing tb->page_addr[1] to not be recorded + stdvga: fix screen blanking + hw/audio/virtio-snd: Always use little endian audio format + ui/gtk: Draw guest frame at refresh cycle + virtio-net: drop too short packets early + target/i386: fix size of EBP writeback in gen_enter() + +------------------------------------------------------------------- +Fri Jun 28 14:40:26 UTC 2024 - dfaggioli@suse.com + +- Update to version 8.2.5: + + Full backport lists (from the various releases) here: + https://lore.kernel.org/qemu-devel/1718081047.648425.1238605.nullmailer@tls.msk.ru/ + + Some of the upstream backports are: + target/loongarch: fix a wrong print in cpu dump + ui/sdl2: Allow host to power down screen + target/i386: fix SSE and SSE2 feature check + target/i386: fix xsave.flat from kvm-unit-tests + disas/riscv: Decode all of the pmpcfg and pmpaddr CSRs + target/riscv/kvm.c: Fix the hart bit setting of AIA + target/riscv: rvzicbo: Fixup CBO extension register calculation + target/riscv: do not set mtval2 for non guest-page faults + target/riscv: prioritize pmp errors in raise_mmu_exception() + target/riscv: rvv: Remove redudant SEW checking for vector fp narrow/widen instructions + target/riscv: rvv: Check single width operator for vfncvt.rod.f.f.w + target/riscv: rvv: Check single width operator for vector fp widen instructions + target/riscv: rvv: Fix Zvfhmin checking for vfwcvt.f.f.v and vfncvt.f.f.w instructions + target/riscv/cpu.c: fix Zvkb extension config + target/riscv: Fix the element agnostic function problem + target/riscv/kvm: tolerate KVM disable ext errors + hw/intc/riscv_aplic: APLICs should add child earlier than realize + iotests: test NBD+TLS+iothread + qio: Inherit follow_coroutine_ctx across TLS + target/arm: Disable SVE extensions when SVE is disabled + hw/intc/arm_gic: Fix handling of NS view of GICC_APR + hvf: arm: Fix encodings for ID_AA64PFR1_EL1 and debug System registers + gitlab: use 'setarch -R' to workaround tsan bug + gitlab: use $MAKE instead of 'make' + dockerfiles: add 'MAKE' env variable to remaining containers + gitlab: Update msys2-64bit runner tags + target/i386: no single-step exception after MOV or POP SS ... -------------------------------------------------------------------- -Fri Jun 28 14:39:13 UTC 2024 - dfaggioli@suse.com - - - Update to latest stable release (9.0.1). - Full list of backports here: - https://lore.kernel.org/qemu-devel/1718081053.366429.1238758.nullmailer@tls.msk.ru/ - - A selection of them is reported here too: - Update version for 9.0.1 release - target/loongarch: fix a wrong print in cpu dump - ui/sdl2: Allow host to power down screen - virtio-gpu: fix v2 migration - target/i386: fix SSE and SSE2 feature check - target/i386: fix xsave.flat from kvm-unit-tests - disas/riscv: Decode all of the pmpcfg and pmpaddr CSRs - riscv, gdbstub.c: fix reg_width in ricsv_gen_dynamic_vector_feature() - target/riscv/kvm.c: Fix the hart bit setting of AIA - target/riscv: rvzicbo: Fixup CBO extension register calculation - target/riscv: do not set mtval2 for non guest-page faults - target/riscv: prioritize pmp errors in raise_mmu_exception() - target/riscv: rvv: Remove redudant SEW checking for vector fp narrow/widen instructions - target/riscv: rvv: Check single width operator for vfncvt.rod.f.f.w - target/riscv: rvv: Check single width operator for vector fp widen instructions - target/riscv: rvv: Fix Zvfhmin checking for vfwcvt.f.f.v and vfncvt.f.f.w instructions - target/riscv/cpu.c: fix Zvkb extension config - target/riscv: Fix the element agnostic function problem - target/riscv/kvm: tolerate KVM disable ext errors - target/riscv/kvm: Fix exposure of Zkr - hw/intc/riscv_aplic: APLICs should add child earlier than realize - iotests: test NBD+TLS+iothread - qio: Inherit follow_coroutine_ctx across TLS - ... - -------------------------------------------------------------------- -Fri May 17 11:44:56 UTC 2024 - dfaggioli@suse.com - -- Update to version 9.0.0: - Full changelog here: - https://wiki.qemu.org/ChangeLog/9.0 - Highlights include: - * block: virtio-blk now supports multiqueue where different queues of a - single disk can be processed by different I/O threads - * gdbstub: various improvements such as catching syscalls in user-mode, - support for fork-follow modes, and support for siginfo:read - * memory: preallocation of memory backends can now be handled - concurrently using multiple threads in some cases - * migration: support for "mapped-ram" capability allowing for more - efficient VM snapshots, improved support for zero-page detection, and - checkpoint-restart support for VFIO - * ARM: architectural feature support for ECV (Enhanced Counter Virtualization), - NV (Nested Virtualization), and NV2 (Enhanced Nested - Virtualization) - * ARM: board support for B-L475E-IOT01A IoT node, mp3-an536 (MPS3 dev board - + AN536 firmware), and raspi4b (Raspberry Pi 4 Model B) - * ARM: additional IO/disk/USB/SPI/ethernet controller and timer support for - Freescale i.MX6, Allwinner R40, Banana Pi, npcm7xxx, and virt boards - * HPPA: numerous bug fixes and SeaBIOS-hppa firmware updated to version 16 - * LoongArch: KVM acceleration support, including LSX/LASX vector - extensions - * RISC-V: ISA/extension support for Zacas, amocas, RVA22 profiles, - Zaamo, Zalrsc, Ztso, and more - * RISC-V: SMBIOS support for RISC-V virt machine, ACPI support for - SRAT, SLIT, AIA, PLIC and updated RHCT table support, and numerous fixes - * s390x: Emulation support for CVDG, CVB, CVBY and CVBG instructions, - and fixes for LAE (Load Address Extended) emulation - * and lots more... - ------------------------------------------------------------------- Thu May 16 14:43:38 UTC 2024 - dfaggioli@suse.com diff --git a/qemu.obsinfo b/qemu.obsinfo index 13dcfe5..678ed73 100644 --- a/qemu.obsinfo +++ b/qemu.obsinfo @@ -1,4 +1,4 @@ name: qemu -version: 9.1.0 -mtime: 1729087038 -commit: 0dbd22c0dd1c7781582a94bc4d4f55daaab27158 +version: 8.2.7 +mtime: 1729175383 +commit: c44e91d4c758029dccdba8d9449bfc69bdbdc6d2 diff --git a/qemu.spec b/qemu.spec index 3b512c9..3033626 100644 --- a/qemu.spec +++ b/qemu.spec @@ -53,7 +53,7 @@ %ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64 riscv64 %define kvm_available 1 -%bcond_without uring +%define with_uring 1 %define liburing_min_version 1.0 %endif @@ -62,11 +62,11 @@ %endif %ifarch x86_64 aarch64 ppc64le s390x -%bcond_without rbd +%define with_rbd 1 %endif %ifarch x86_64 ppc64le -%bcond_without daxctl +%define with_daxctl 1 %endif # enforce pxe rom sizes for migration compatability from SLE 11 SP3 forward @@ -82,7 +82,7 @@ URL: https://www.qemu.org/ Summary: Machine emulator and virtualizer License: BSD-2-Clause AND BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT Group: System/Emulators/PC -Version: 9.1.0 +Version: 8.2.7 Release: 0 Source0: qemu-%{version}.tar.xz Source1: common.inc @@ -127,20 +127,20 @@ BuildRequires: libnuma-devel %if 0%{with canokey} BuildRequires: canokey-qemu-devel %endif -%if 0%{with daxctl} +%if 0%{?with_daxctl} BuildRequires: pkgconfig(libndctl) %endif %if %{kvm_available} BuildRequires: pkgconfig(udev) %endif -%if 0%{with rbd} +%if 0%{?with_rbd} BuildRequires: librbd-devel %endif %if 0%{with spice} BuildRequires: pkgconfig(spice-protocol) >= 0.12.3 BuildRequires: pkgconfig(spice-server) >= 0.12.5 %endif -%if 0%{with uring} +%if 0%{?with_uring} BuildRequires: pkgconfig(liburing) >= %liburing_min_version %endif %if 0%{with xdp} @@ -174,11 +174,6 @@ BuildRequires: multipath-tools-devel BuildRequires: ninja >= 1.7 BuildRequires: pam-devel BuildRequires: pkgconfig -BuildRequires: rdma-core-devel -BuildRequires: snappy-devel -BuildRequires: update-desktop-files -BuildRequires: usbredir-devel >= 0.6 -BuildRequires: xfsprogs-devel BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(epoxy) BuildRequires: pkgconfig(gbm) @@ -214,6 +209,11 @@ BuildRequires: pkgconfig(virglrenderer) >= 0.4.1 BuildRequires: pkgconfig(vte-2.91) BuildRequires: pkgconfig(xkbcommon) BuildRequires: pkgconfig(zlib) +BuildRequires: rdma-core-devel +BuildRequires: snappy-devel +BuildRequires: update-desktop-files +BuildRequires: usbredir-devel >= 0.6 +BuildRequires: xfsprogs-devel %{?systemd_ordering} ## Packages we will REQUIRE %if %{kvm_available} @@ -252,7 +252,7 @@ Recommends: qemu-ksm = %{version} Recommends: qemu-tools Recommends: qemu-ui-curses ## Packages we will SUGGEST -%if 0%{with rbd} +%if 0%{?with_rbd} Suggests: qemu-block-rbd %endif Suggests: qemu-accel-qtest @@ -401,8 +401,8 @@ meson subprojects packagefiles --apply berkeley-testfloat-3 meson subprojects packagefiles --apply berkeley-softfloat-3 # for the record, this set of firmware files is installed, but we don't -# build (yet): bamboo.dtb canyonlands.dtb hppa-firmware.img hppa-firmware.img 64 -# openbios-ppc openbios-sparc32 openbios-sparc64 palcode-clipper petalogix-ml605.dtb +# build (yet): bamboo.dtb canyonlands.dtb hppa-firmware.img openbios-ppc +# openbios-sparc32 openbios-sparc64 palcode-clipper petalogix-ml605.dtb # petalogix-s3adsp1800.dtb QEMU,cgthree.bin QEMU,tcx.bin qemu_vga.ndrv # u-boot.e500 u-boot-sam460-20100605.bin opensbi-riscv32-generic-fw_dynamic.bin # opensbi-riscv32-generic-fw_dynamic.elfnpcm7xx_bootrom.bin vof.bin @@ -490,8 +490,8 @@ sed -i '/^\ \ \ about\/index.*/i \ \ \ supported.rst' docs/index.rst # from a git branch. We, therefore, assumed that the following commands # have been run, and the result committed to the repository (with seabios # and skiboot at the proper commit/tag/...): -# (pushd roms/seabios && git describe --tags --long --dirty > ../../rpm/seabios_version ; popd) -# (pushd roms/skiboot && ./make_version.sh > ../../rpm/skiboot_version ; popd) +# git -C roms/seabios describe --tags --long --dirty > rpm/seabios_version +# (cd roms/skiboot && ./make_version.sh > ../../rpm/skiboot_version) cp %{rpmfilesdir}/seabios_version roms/seabios/.version cp %{rpmfilesdir}/skiboot_version roms/skiboot/.version find . -iname ".git" -exec rm -rf {} + @@ -507,6 +507,7 @@ export HOSTNAME=OBS # is used in roms/SLOF/Makefile.gen (boo#1084909) # for them. # TODO: Check whether we want to enable the followings: +# * avx512f # * debug-info # * fuse # * malloc-trim @@ -535,8 +536,143 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g --localstatedir=%_localstatedir \ --prefix=%_prefix \ --sysconfdir=%_sysconfdir \ - --with-pkgversion="$(echo '%{distro}' | sed 's/ (.*)//')" \ - %{disable_everything} \ + --with-pkgversion="%(echo '%{distro}' | sed 's/ (.*)//')" \ + --disable-af-xdp \ + --disable-alsa \ + --disable-attr \ + --disable-auth-pam \ + --disable-avx2 \ + --disable-avx512f \ + --disable-block-drv-whitelist-in-tools \ + --disable-bochs \ + --disable-bpf \ + --disable-brlapi \ + --disable-bsd-user \ + --disable-bzip2 \ + --disable-cap-ng \ + --disable-capstone \ + --disable-cfi \ + --disable-cfi-debug \ + --disable-cloop \ + --disable-cocoa \ + --disable-coreaudio \ + --disable-coroutine-pool \ + --disable-crypto-afalg \ + --disable-curl \ + --disable-curses \ + --disable-dbus-display \ + --disable-debug-info \ + --disable-debug-mutex \ + --disable-debug-tcg \ + --disable-dmg \ + --disable-docs \ + --disable-download \ + --disable-dsound \ + --disable-fdt \ + --disable-fuse \ + --disable-fuse-lseek \ + --disable-gcrypt \ + --disable-gettext \ + --disable-gio \ + --disable-glusterfs \ + --disable-gnutls \ + --disable-gtk \ + --disable-guest-agent \ + --disable-guest-agent-msi \ + --disable-hv-balloon \ + --disable-hvf \ + --disable-iconv \ + --disable-jack \ + --disable-kvm \ + --disable-l2tpv3 \ + --disable-libdaxctl \ + --disable-libiscsi \ + --disable-libkeyutils \ + --disable-libnfs \ + --disable-libpmem \ + --disable-libssh \ + --disable-libudev \ + --disable-libusb \ + --disable-linux-aio \ + --disable-linux-io-uring \ + --disable-linux-user \ + --disable-live-block-migration \ + --disable-lto \ + --disable-lzfse \ + --disable-lzo \ + --disable-malloc-trim \ + --disable-membarrier \ + --disable-module-upgrades \ + --disable-modules \ + --disable-mpath \ + --disable-multiprocess \ + --disable-netmap \ + --disable-nettle \ + --disable-numa \ + --disable-nvmm \ + --disable-opengl \ + --disable-oss \ + --disable-pa \ + --disable-parallels \ + --disable-pie \ + --disable-pipewire \ + --disable-pixman \ + --disable-plugins \ + --disable-png \ + --disable-pvrdma \ + --disable-qcow1 \ + --disable-qed \ + --disable-qom-cast-debug \ + --disable-rbd \ + --disable-rdma \ + --disable-relocatable \ + --disable-replication \ + --disable-rng-none \ + --disable-rutabaga-gfx \ + --disable-safe-stack \ + --disable-sanitizers \ + --disable-sdl \ + --disable-sdl-image \ + --disable-seccomp \ + --disable-selinux \ + --disable-slirp \ + --disable-slirp-smbd \ + --disable-smartcard \ + --disable-snappy \ + --disable-sparse \ + --disable-spice \ + --disable-spice-protocol \ + --disable-strip \ + --disable-system \ + --disable-tcg \ + --disable-tcg-interpreter \ + --disable-tools \ + --disable-tpm \ + --disable-u2f \ + --disable-usb-redir \ + --disable-user \ + --disable-vde \ + --disable-vdi \ + --disable-vhost-crypto \ + --disable-vhost-kernel \ + --disable-vhost-net \ + --disable-vhost-user \ + --disable-vhost-user-blk-server \ + --disable-vhost-vdpa \ + --disable-virglrenderer \ + --disable-virtfs \ + --disable-vnc \ + --disable-vnc-jpeg \ + --disable-vnc-sasl \ + --disable-vte \ + --disable-vvfat \ + --disable-werror \ + --disable-whpx \ + --disable-xen \ + --disable-xen-pci-passthrough \ + --disable-xkbcommon \ + --disable-zstd \ + --without-default-devices \ %if 0%{?suse_version} >= 1600 --audio-drv-list=pipewire,pa,alsa,jack,oss \ %else @@ -556,31 +692,31 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g %if 0%{with canokey} --enable-canokey \ %endif -%if 0%{kvm_available} +%if %{kvm_available} --enable-kvm \ %endif -%if 0%{with daxctl} +%if 0%{?with_daxctl} --enable-libdaxctl \ %endif -%if 0%{with uring} +%if 0%{?with_uring} --enable-linux-io-uring \ %endif %if "%{_lto_cflags}" != "%{nil}" --enable-lto \ %endif -%if 0%{with malloc_trim} +%if %{with malloc_trim} --enable-malloc-trim \ %endif -%if 0%{with system_membarrier} +%if %{with system_membarrier} --enable-membarrier \ %endif %ifnarch %arm s390x --enable-numa \ %endif -%if 0%{with rbd} +%if 0%{?with_rbd} --enable-rbd \ %endif -%if 0%{has_rutabaga_gfx} +%if %{has_rutabaga_gfx} --enable-rutabaga-gfx \ %endif --enable-alsa \ @@ -618,6 +754,7 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g --enable-libudev \ --enable-libusb \ --enable-linux-aio \ + --enable-live-block-migration \ --enable-lzfse \ --enable-lzo \ --enable-modules \ @@ -630,6 +767,7 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g --enable-pipewire \ --enable-pixman \ --enable-png \ + --enable-pvrdma \ --enable-qcow1 \ --enable-qed \ --enable-rdma \ @@ -652,7 +790,6 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g --enable-usb-redir \ --enable-vde \ --enable-vdi \ - --enable-vhdx \ --enable-vhost-crypto \ --enable-vhost-kernel \ --enable-vhost-net \ @@ -664,7 +801,6 @@ EXTRA_CFLAGS="$(echo %{optflags} | sed -E 's/-[A-Z]?_FORTIFY_SOURCE[=]?[0-9]*//g --enable-vnc \ --enable-vnc-jpeg \ --enable-vnc-sasl \ - --enable-vpc \ --enable-vte \ --enable-vvfat \ --enable-werror \ @@ -739,17 +875,16 @@ popd %make_build -C %srcdir/roms seavgabios-ati \ -%make_build -C %srcdir/roms pxerom NO_WERROR=1 +%make_build -C %srcdir/roms pxerom %make_build -C %srcdir/roms edk2-basetools EXTRA_OPTFLAGS='-fPIE' - -%make_build -C %srcdir/roms efirom NO_WERROR=1 +%make_build -C %srcdir/roms efirom %if %{force_fit_virtio_pxe_rom} pushd %srcdir patch -p1 < %{rpmfilesdir}/openSUSE-pcbios-stub-out-the-SAN-req-s-i.patch popd -%make_build -C %srcdir/roms NO_WERROR=1 pxerom_variants=virtio pxerom_targets=1af41000 pxerom +%make_build -C %srcdir/roms pxerom_variants=virtio pxerom_targets=1af41000 pxerom %endif for i in %supported_nics_large %unsupported_nics @@ -842,8 +977,6 @@ unlink %{buildroot}%_datadir/%name/edk2-i386-secure-code.fd unlink %{buildroot}%_datadir/%name/edk2-i386-vars.fd unlink %{buildroot}%_datadir/%name/edk2-x86_64-code.fd unlink %{buildroot}%_datadir/%name/edk2-x86_64-secure-code.fd -unlink %{buildroot}%_datadir/%name/edk2-riscv-code.fd -unlink %{buildroot}%_datadir/%name/edk2-riscv-vars.fd # this was never meant for customer consumption - delete even though installed unlink %{buildroot}%_bindir/elf2dmp @@ -886,21 +1019,6 @@ done # End of "if build_x86_firmware" %endif -# Upstream provides services for qemu-pr-helper. So far, we've not needed -# them, so let's continue not to ship them for now. If that changes, just -# uncomment these lines (and the ones in the %file pr-helper section) -#install -m 0644 contrib/systemd/qemu-pr-helper.service %{buildroot}%{_unitdir} -#install -m 0644 contrib/systemd/qemu-pr-helper.socket %{buildroot}%{_unitdir} - -%if 0%{with vmsr_helper} -echo "" -# Upstream provides services for qemu-vmsr-helper. So far, we've not needed -# them, so let's continue not to ship them for now. If that changes, just -# uncomment these lines (and the ones in the %file vmsr-helper section) -#install -m 0644 contrib/systemd/qemu-vmsr-helper.service %{buildroot}%{_unitdir} -#install -m 0644 contrib/systemd/qemu-vmsr-helper.socket %{buildroot}%{_unitdir} -%endif - %suse_update_desktop_file qemu # Common install steps for qemu and qemu-linux-user @@ -914,11 +1032,11 @@ cd %blddir # do that in the patch itself. Instead, we keep a copy of the binary in the # package sources, and put it in place now, before the tests themselves. # If that patch is removed, the following line needs to go as well. -cp %{rpmfilesdir}/DSDT.pcie %{srcdir}/tests/data/acpi/x86/microvm/ +cp %{rpmfilesdir}/DSDT.pcie %{srcdir}/tests/data/acpi/microvm/ # Patch 'tests/acpi: update tables for new core count test' requires some new # binaries to be introcuded too. Let's copy them in place as well -cp %{rpmfilesdir}/APIC.core-count2 %{rpmfilesdir}/DSDT.core-count2 %{rpmfilesdir}/FACP.core-count2 %{srcdir}/tests/data/acpi/x86/q35/ +cp %{rpmfilesdir}/APIC.core-count2 %{rpmfilesdir}/DSDT.core-count2 %{rpmfilesdir}/FACP.core-count2 %{srcdir}/tests/data/acpi/q35/ %if 0%{?qemu_user_space_build} # Seccomp is not supported by linux-user emulation @@ -1187,6 +1305,7 @@ popular QEMU packages which are dedicated to a single architecture.) %_bindir/qemu-system-mipsel %_bindir/qemu-system-mips64 %_bindir/qemu-system-mips64el +%_bindir/qemu-system-nios2 %_bindir/qemu-system-or1k %_bindir/qemu-system-riscv32 %_bindir/qemu-system-riscv64 @@ -1199,7 +1318,6 @@ popular QEMU packages which are dedicated to a single architecture.) %_bindir/qemu-system-xtensa %_bindir/qemu-system-xtensaeb %_datadir/%name/hppa-firmware.img -%_datadir/%name/hppa-firmware64.img %_datadir/%name/openbios-sparc32 %_datadir/%name/openbios-sparc64 %_datadir/%name/opensbi-riscv32-generic-fw_dynamic.bin @@ -1579,24 +1697,8 @@ This package provides a helper utility for SCSI persistent reservations. %files pr-helper %_bindir/qemu-pr-helper -#%{_unitdir}/qemu-pr-helper.service -#%{_unitdir}/qemu-pr-helper.socket %_mandir/man8/qemu-pr-helper.8.gz -%if 0%{with vmsr_helper} -%package vmsr-helper -Summary: QEMU virtual RAPL MSR helper -Group: System/Emulators/PC - -%description vmsr-helper -This package provides a helper utility for letting VMs access the RAPL (Running Average Power Limit) MSR. - -%files vmsr-helper -%_bindir/qemu-vmsr-helper -#%{_unitdir}/qemu-vmsr-helper.service -#%{_unitdir}/qemu-vmsr-helper.socket -%endif - %package tools Summary: Tools for QEMU Group: System/Emulators/PC @@ -1604,15 +1706,12 @@ Requires(pre): permissions Requires: qemu-img Requires: qemu-pr-helper Requires: group(kvm) -%if 0%{with vmsr_helper} -Requires: qemu-vmsr-helper -%endif %if %{has_virtiofsd} Requires: virtiofsd %endif Recommends: multipath-tools Recommends: qemu-block-curl -%if 0%{with rbd} +%if 0%{?with_rbd} Recommends: qemu-block-rbd %endif @@ -1768,6 +1867,7 @@ This package provides QTest accelerator for testing QEMU. %_libdir/%name/accel-qtest-mips64.so %_libdir/%name/accel-qtest-mips64el.so %_libdir/%name/accel-qtest-mipsel.so +%_libdir/%name/accel-qtest-nios2.so %_libdir/%name/accel-qtest-or1k.so %_libdir/%name/accel-qtest-ppc.so %_libdir/%name/accel-qtest-ppc64.so @@ -1784,7 +1884,7 @@ This package provides QTest accelerator for testing QEMU. %_libdir/%name/accel-qtest-xtensa.so %_libdir/%name/accel-qtest-xtensaeb.so -%if 0%{with rbd} +%if 0%{?with_rbd} %package block-rbd Summary: Rados Block Device (Ceph) support for QEMU Group: System/Emulators/PC @@ -1862,7 +1962,7 @@ wider support than qboot, but still focuses on quick boot up. %package seabios Summary: x86 Legacy BIOS for QEMU Group: System/Emulators/PC -Version: 9.1.0%{sbver} +Version: 8.2.7%{sbver} Release: 0 BuildArch: noarch Conflicts: %name < 1.6.0 @@ -1883,7 +1983,7 @@ is the default and legacy BIOS for QEMU. %package vgabios Summary: VGA BIOSes for QEMU Group: System/Emulators/PC -Version: 9.1.0%{sbver} +Version: 8.2.7%{sbver} Release: 0 BuildArch: noarch Conflicts: %name < 1.6.0 @@ -1909,7 +2009,7 @@ video card. For use with QEMU. %package ipxe Summary: PXE ROMs for QEMU NICs Group: System/Emulators/PC -Version: 9.1.0 +Version: 8.2.7 Release: 0 BuildArch: noarch Conflicts: %name < 1.6.0