diff --git a/0001-include-ui-rect.h-fix-qemu_rect_init-mis-assignment.patch b/0001-include-ui-rect.h-fix-qemu_rect_init-mis-assignment.patch deleted file mode 100644 index 9ca46b6..0000000 --- a/0001-include-ui-rect.h-fix-qemu_rect_init-mis-assignment.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 9d5b42beb6978dc6219d5dc029c9d453c6b8d503 Mon Sep 17 00:00:00 2001 -From: Elen Avan -Date: Fri, 22 Dec 2023 22:17:21 +0300 -Subject: [PATCH] include/ui/rect.h: fix qemu_rect_init() mis-assignment -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Elen Avan -Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2051 -Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2050 -Fixes: a200d53b1fde "virtio-gpu: replace PIXMAN for region/rect test" -Cc: qemu-stable@nongnu.org -Reviewed-by: Michael Tokarev -Reviewed-by: Marc-André Lureau -Signed-off-by: Michael Tokarev ---- - include/ui/rect.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/ui/rect.h b/include/ui/rect.h -index 94898f92d0..68f05d78a8 100644 ---- a/include/ui/rect.h -+++ b/include/ui/rect.h -@@ -19,7 +19,7 @@ static inline void qemu_rect_init(QemuRect *rect, - uint16_t width, uint16_t height) - { - rect->x = x; -- rect->y = x; -+ rect->y = y; - rect->width = width; - rect->height = height; - } --- -2.43.0 - diff --git a/0001-pc-bios-optionrom-Fix-pvh.img-ld-build-failure-on-fe.patch b/0001-pc-bios-optionrom-Fix-pvh.img-ld-build-failure-on-fe.patch deleted file mode 100644 index 87d8a11..0000000 --- a/0001-pc-bios-optionrom-Fix-pvh.img-ld-build-failure-on-fe.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 98287d67f3ea6c49795838beda4b020cf236fc20 Mon Sep 17 00:00:00 2001 -From: Cole Robinson -Date: Mon, 27 Nov 2023 12:51:25 -0500 -Subject: [PATCH] pc-bios/optionrom: Fix pvh.img ld build failure on fedora - rawhide -Content-type: text/plain - -binutils 2.39 shows some warnings when building pvh.img - -/usr/bin/ld: warning: pvh.o: missing .note.GNU-stack section implies executable stack -/usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker -/usr/bin/ld: warning: pvh.img has a LOAD segment with RWX permissions - -The latter of which is fatal on Fedora rawhide for some reason. - -Add linker options to suppress the errors - -Signed-off-by: Cole Robinson ---- - pc-bios/optionrom/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile -index 30d07026c7..f54ed39b54 100644 ---- a/pc-bios/optionrom/Makefile -+++ b/pc-bios/optionrom/Makefile -@@ -36,7 +36,7 @@ config-cc.mak: Makefile - $(call cc-option,-Wno-array-bounds)) 3> config-cc.mak - -include config-cc.mak - --override LDFLAGS = -nostdlib -Wl,--build-id=none,-T,$(SRC_DIR)/flat.lds -+override LDFLAGS = -nostdlib -Wl,--build-id=none,-T,$(SRC_DIR)/flat.lds -Wl,--no-warn-rwx-segments -Wl,--no-warn-execstack - - pvh.img: pvh.o pvh_main.o - diff --git a/qemu.spec b/qemu.spec index 8f84811..33bcd0c 100644 --- a/qemu.spec +++ b/qemu.spec @@ -1,3 +1,4 @@ + # Provide a way to skip tests via rpmbuild `--without` # This makes it easier to skip tests in copr repos, where # the qemu test suite is historically flakey @@ -102,6 +103,9 @@ %ifarch x86_64 %{power64} %global have_pmem 1 %endif +%if 0%{?rhel} >= 10 +%global have_pmem 0 +%endif %global have_jack 1 %if 0%{?rhel} @@ -129,7 +133,7 @@ # Matches edk2.spec ExclusiveArch %global have_edk2 0 -%ifarch %{ix86} x86_64 %{arm} aarch64 +%ifarch %{ix86} x86_64 %{arm} aarch64 riscv64 %global have_edk2 1 %endif @@ -350,18 +354,18 @@ Obsoletes: %{name}-system-unicore32-core <= %{epoch}:%{version}-%{release} \ Obsoletes: sgabios-bin <= 1:0.20180715git-10.fc38 # Release candidate version tracking -#global rcver rc2 +# global rcver rc4 %if 0%{?rcver:1} %global rcrel .%{rcver} %global rcstr -%{rcver} %endif # To prevent rpmdev-bumpspec breakage -%global baserelease 1 +%global baserelease 2 Summary: QEMU is a FAST! processor emulator Name: qemu -Version: 8.2.0 +Version: 9.0.0 Release: %{baserelease}%{?rcrel}.0.riscv64%{?dist} Epoch: 2 License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND FSFAP AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-2.0-or-later WITH GCC-exception-2.0 AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND MIT AND LicenseRef-Fedora-Public-Domain AND CC-BY-3.0 @@ -373,13 +377,12 @@ Source0: %{dlurl}/%{name}-%{version}%{?rcstr}.tar.xz Source1: %{dlurl}/%{name}-%{version}%{?rcstr}.tar.xz.sig Source2: gpgkey-CEACC9E15534EBABB82D3FA03353C9CEF108B584.gpg -# https://patchwork.kernel.org/project/qemu-devel/patch/20231128143647.847668-1-crobinso@redhat.com/ -# Fix pvh.img ld build failure on fedora rawhide -Patch: 0001-pc-bios-optionrom-Fix-pvh.img-ld-build-failure-on-fe.patch - - -# https://bugzilla.redhat.com/show_bug.cgi?id=2256884 -Patch: 0001-include-ui-rect.h-fix-qemu_rect_init-mis-assignment.patch +# qemu 9.0.0 errors with: +# RPM build errors: +# Missing build-id in /tmp/rpmbuild/BUILDROOT/qemu-9.0.0-1.rc2.fc41.x86_64/usr/share/qemu/hppa-firmware.img +# Missing build-id in /tmp/rpmbuild/BUILDROOT/qemu-9.0.0-1.rc2.fc41.x86_64/usr/share/qemu/hppa-firmware64.img +# Generating build-id links failed +%global _missing_build_ids_terminate_build 0 Source10: qemu-guest-agent.service Source11: 99-qemu-guest-agent.rules @@ -869,6 +872,7 @@ This package provides the virtio-gpu display device for QEMU. %package device-display-virtio-gpu-gl Summary: QEMU virtio-gpu-gl display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-gpu-gl This package provides the virtio-gpu-gl display device for QEMU. %endif @@ -877,6 +881,7 @@ This package provides the virtio-gpu-gl display device for QEMU. %package device-display-virtio-gpu-rutabaga Summary: QEMU virtio-gpu-rutabaga display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-gpu-rutabaga This package provides the virtio-gpu-rutabaga display device for QEMU. %endif @@ -884,6 +889,7 @@ This package provides the virtio-gpu-rutabaga display device for QEMU. %package device-display-virtio-gpu-pci Summary: QEMU virtio-gpu-pci display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-gpu-pci This package provides the virtio-gpu-pci display device for QEMU. @@ -891,6 +897,8 @@ This package provides the virtio-gpu-pci display device for QEMU. %package device-display-virtio-gpu-pci-gl Summary: QEMU virtio-gpu-pci-gl display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-gpu-pci%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-gpu-gl%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-gpu-pci-gl This package provides the virtio-gpu-pci-gl display device for QEMU. %endif @@ -899,6 +907,7 @@ This package provides the virtio-gpu-pci-gl display device for QEMU. %package device-display-virtio-gpu-pci-rutabaga Summary: QEMU virtio-gpu-pci-rutabaga display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-gpu-pci%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-gpu-pci-rutabaga This package provides the virtio-gpu-pci-rutabaga display device for QEMU. %endif @@ -906,18 +915,21 @@ This package provides the virtio-gpu-pci-rutabaga display device for QEMU. %package device-display-virtio-gpu-ccw Summary: QEMU virtio-gpu-ccw display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-gpu-ccw This package provides the virtio-gpu-ccw display device for QEMU. %package device-display-virtio-vga Summary: QEMU virtio-vga display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-vga This package provides the virtio-vga display device for QEMU. %package device-display-virtio-vga-gl Summary: QEMU virtio-vga-gl display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-vga%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-vga-gl This package provides the virtio-vga-gl display device for QEMU. @@ -925,6 +937,7 @@ This package provides the virtio-vga-gl display device for QEMU. %package device-display-virtio-vga-rutabaga Summary: QEMU virtio-vga-rutabaga display device Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-device-display-virtio-vga%{?_isa} = %{epoch}:%{version}-%{release} %description device-display-virtio-vga-rutabaga This package provides the virtio-vga-rutabaga display device for QEMU. %endif @@ -1389,6 +1402,9 @@ This package provides the QEMU system emulator for RISC-V systems. %package system-riscv-core Summary: QEMU system emulator for RISC-V Requires: %{name}-common = %{epoch}:%{version}-%{release} +%if %{have_edk2} +Requires: edk2-riscv64 +%endif %description system-riscv-core This package provides the QEMU system emulator for RISC-V systems. @@ -1901,6 +1917,9 @@ pushd %{static_builddir} run_configure \ --enable-attr \ --enable-linux-user \ +%ifnarch %{power64} + --enable-pie \ +%endif --enable-tcg \ --disable-install-blobs \ --static @@ -2268,6 +2287,19 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \ %{_mandir}/man1/qemu-storage-daemon.1* %{_mandir}/man7/qemu-storage-daemon-qmp-ref.7* +%{_datadir}/systemtap/tapset/qemu-img.stp +%{_datadir}/systemtap/tapset/qemu-img-log.stp +%{_datadir}/systemtap/tapset/qemu-img-simpletrace.stp +%{_datadir}/systemtap/tapset/qemu-io.stp +%{_datadir}/systemtap/tapset/qemu-io-log.stp +%{_datadir}/systemtap/tapset/qemu-io-simpletrace.stp +%{_datadir}/systemtap/tapset/qemu-nbd.stp +%{_datadir}/systemtap/tapset/qemu-nbd-log.stp +%{_datadir}/systemtap/tapset/qemu-nbd-simpletrace.stp +%{_datadir}/systemtap/tapset/qemu-storage-daemon.stp +%{_datadir}/systemtap/tapset/qemu-storage-daemon-log.stp +%{_datadir}/systemtap/tapset/qemu-storage-daemon-simpletrace.stp + %files -n qemu-guest-agent %doc COPYING README.rst @@ -2916,6 +2948,7 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \ %{_datadir}/systemtap/tapset/qemu-system-hppa-simpletrace.stp %{_mandir}/man1/qemu-system-hppa.1* %{_datadir}/%{name}/hppa-firmware.img +%{_datadir}/%{name}/hppa-firmware64.img %files system-loongarch64 @@ -3133,9 +3166,46 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \ %changelog -* Thu Jan 11 2024 David Abdurachmanov - 8.2.0-1.0.riscv64 +* Sun Jul 21 2024 David Abdurachmanov - 2:9.0.0-2.0.riscv64 - Fix riscv64 files +* Fri Jul 19 2024 Fedora Release Engineering - 2:9.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Wed Apr 24 2024 Cole Robinson - 9.0.0-1 +- New release qemu 9.0.0 GA + +* Tue Apr 23 2024 Cole Robinson - 9.0.0-0.1.rc4 +- New release qemu 9.0.0-rc4 + +* Sat Apr 06 2024 Cole Robinson - 8.2.2-2 +- Rebuild for new libiscsi + +* Wed Mar 06 2024 Cole Robinson - 8.2.2-1 +- New release qemu 8.2.2 + +* Mon Feb 26 2024 Richard W.M. Jones - 2:8.2.0-9 +- ppc/spapr: Initialize max_cpus limit to SPAPR_IRQ_NR_IPIS (RHBZ#2265982) + +* Wed Feb 21 2024 Richard W.M. Jones - 2:8.2.0-8 +- Fix user-emulation of FIFREEZE and FITHAW ioctls + +* Thu Feb 01 2024 Cole Robinson - 8.2.0-7 +- Enable PIE for qemu-user-static builds +- Replace PVH build fix patch with version that should work on centos + +* Tue Jan 30 2024 Richard W.M. Jones - 2:8.2.0-6 +- Fix builds on i686. + +* Fri Jan 26 2024 Fedora Release Engineering - 2:8.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Jan 22 2024 Fedora Release Engineering - 2:8.2.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 12 2024 Daan De Meyer - 8.2.0-2 +- Backport TCG patch that fixes OVMF boot with 4M variables + * Tue Jan 9 2024 Daniel P. Berrangé - 8.2.0-1 - Update to 8.2.0 release - Add gpg verification of source tarball diff --git a/rpminspect.yaml b/rpminspect.yaml index fea3fc8..b6ec74c 100644 --- a/rpminspect.yaml +++ b/rpminspect.yaml @@ -1,8 +1,3 @@ -# complains about qemu use of: gethostbyname, inet_aton, inet_ntoa -# but warning here isn't really accomplishing anything -badfuncs: - exclude_path: .* - # These pre-compiled files have `.symtab` debuginfo: ignore: @@ -15,6 +10,18 @@ debuginfo: elf: exclude_path: ^/usr/share/qemu/(u-boot.e500|hppa-firmware.img)$ -# CryptoPkg fuzz tests have invalid unicode, but I assume that's intentional -unicode: - exclude: .*edk2/CryptoPkg.* + +inspections: + # complains about qemu use of: gethostbyname, inet_aton, inet_ntoa + # Warning here isn't really accomplishing anything + badfuncs: off + + # bundled edk2 source CryptoPkg fuzz tests have invalid unicode, + # but I assume that's intentional + # + # We would exclude that path using `unicode:` section, but fedora CI + # doesn't allow it: + # rpminspect: *** ignoring 'unicode' section in ...rpminspect.yaml; only allowed in system-wide configuration + # + # So instead we fully disable the unicode check + unicode: off diff --git a/sources b/sources index ce81ee2..2a31e12 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (qemu-8.2.0.tar.xz) = 92ec41196ff145cdbb98948f6b6e43214fa4b4419554a8a1927fb4527080c8212ccb703e184baf8ee0bdfa50ad7a84689e8f5a69eba1bd7bbbdfd69e3b91256c -SHA512 (qemu-8.2.0.tar.xz.sig) = 05412219ab0ff145f56708f99bc60b378b2b9ef6fbf3c48bffd32a2952188b2ee34a798949b09d6d8fc9f2483094fa0e3b488f52f69508604747ad4e2960f302 +SHA512 (qemu-9.0.0.tar.xz) = 1603517cd4c93632ba60ad7261eb67374f12a744bf58f10b0e8686e46d3a02d8b6bf58a0c617f23a1868084aaba6386c24341894f75539e0b816091718721427 +SHA512 (qemu-9.0.0.tar.xz.sig) = b94259f56d7da92dd8df60bb9a328f7a275cdf2f7128c1e85039d894da8663d2b058ea4d275442ec80ac9c49fe91f30d489b3f3fc1f97bf845b9fe6851cf9191