diff --git a/gnu/local.mk b/gnu/local.mk index 1acb49af74d..10179207852 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2198,11 +2198,10 @@ dist_patch_DATA = \ %D%/packages/patches/qdigidoc-bundle-tsl-files.patch \ %D%/packages/patches/qemu-build-info-manual.patch \ %D%/packages/patches/qemu-disable-bios-tables-test.patch \ - %D%/packages/patches/qemu-disable-migration-test.patch \ %D%/packages/patches/qemu-glibc-2.27.patch \ %D%/packages/patches/qemu-glibc-2.30.patch \ - %D%/packages/patches/qemu-glibc-2.41.patch \ %D%/packages/patches/qemu-fix-agent-paths.patch \ + %D%/packages/patches/qemu-fix-test-virtio-version.patch \ %D%/packages/patches/qrcodegen-cpp-cmake.patch \ %D%/packages/patches/qtbase-absolute-runpath.patch \ %D%/packages/patches/qtbase-fix-thread-test.patch \ diff --git a/gnu/packages/patches/qemu-disable-bios-tables-test.patch b/gnu/packages/patches/qemu-disable-bios-tables-test.patch index ba89b910990..fc5dc71da90 100644 --- a/gnu/packages/patches/qemu-disable-bios-tables-test.patch +++ b/gnu/packages/patches/qemu-disable-bios-tables-test.patch @@ -1,17 +1,16 @@ -The bios-tables-test may fail; disable it (see: https://gitlab.com/qemu-project/qemu/-/issues/1098) - diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build -index 2f0d3ef080..e3c33a86b5 100644 +index 669d07c06b..3399c1043a 100644 --- a/tests/qtest/meson.build +++ b/tests/qtest/meson.build -@@ -1,6 +1,5 @@ +@@ -1,7 +1,6 @@ slow_qtests = { + 'ahci-test': 150, 'aspeed_smc-test': 360, - 'bios-tables-test' : 910, 'cdrom-test' : 610, 'device-introspect-test' : 720, - 'migration-test' : 480, -@@ -86,9 +85,6 @@ qtests_i386 = \ + 'ide-test' : 120, +@@ -102,9 +101,6 @@ qtests_i386 = \ config_all_devices.has_key('CONFIG_Q35') and \ config_all_devices.has_key('CONFIG_VIRTIO_PCI') and \ slirp.found() ? ['virtio-net-failover'] : []) + \ @@ -20,8 +19,16 @@ index 2f0d3ef080..e3c33a86b5 100644 - config_all_devices.has_key('CONFIG_PARALLEL') ? ['bios-tables-test'] : []) + \ qtests_pci + \ qtests_cxl + \ - ['fdc-test', -@@ -235,7 +231,6 @@ qtests_arm = \ + [ +@@ -148,7 +144,6 @@ qtests_hppa = \ + + qtests_loongarch64 = qtests_filter + \ + (config_all_devices.has_key('CONFIG_LOONGARCH_VIRT') ? ['numa-test'] : []) + \ +- (unpack_edk2_blobs ? ['bios-tables-test'] : []) + \ + ['boot-serial-test', + 'cpu-plug-test'] + +@@ -253,7 +248,6 @@ qtests_arm = \ # TODO: once aarch64 TCG is fixed on ARM 32 bit host, make bios-tables-test unconditional qtests_aarch64 = \ @@ -29,21 +36,21 @@ index 2f0d3ef080..e3c33a86b5 100644 (config_all_accel.has_key('CONFIG_TCG') and config_all_devices.has_key('CONFIG_TPM_TIS_SYSBUS') ? \ ['tpm-tis-device-test', 'tpm-tis-device-swtpm-test'] : []) + \ (config_all_devices.has_key('CONFIG_XLNX_ZYNQMP_ARM') ? ['xlnx-can-test', 'fuzz-xlnx-dp-test'] : []) + \ -@@ -260,9 +255,6 @@ qtests_s390x = \ +@@ -281,8 +275,7 @@ qtests_s390x = \ qtests_riscv32 = \ (config_all_devices.has_key('CONFIG_SIFIVE_E_AON') ? ['sifive-e-aon-watchdog-test'] : []) --qtests_riscv64 = \ +-qtests_riscv64 = ['riscv-csr-test'] + \ - (unpack_edk2_blobs ? ['bios-tables-test'] : []) -- ++qtests_riscv64 = ['riscv-csr-test'] + qos_test_ss = ss.source_set() qos_test_ss.add( - 'ac97-test.c', -@@ -328,7 +320,6 @@ if gnutls.found() - endif - - qtests = { +@@ -371,7 +364,6 @@ qtests = { + 'aspeed_smc-test': files('aspeed-smc-utils.c', 'aspeed_smc-test.c'), + 'ast2700-hace-test': files('aspeed-hace-utils.c', 'ast2700-hace-test.c'), + 'ast2700-smc-test': files('aspeed-smc-utils.c', 'ast2700-smc-test.c'), - 'bios-tables-test': [io, 'boot-sector.c', 'acpi-utils.c', 'tpm-emu.c'], 'cdrom-test': files('boot-sector.c'), - 'dbus-vmstate-test': files('migration-helpers.c') + dbus_vmstate1, - 'erst-test': files('erst-test.c'), + 'dbus-vmstate-test': files('migration/migration-qmp.c', + 'migration/migration-util.c') + dbus_vmstate1, diff --git a/gnu/packages/patches/qemu-disable-migration-test.patch b/gnu/packages/patches/qemu-disable-migration-test.patch deleted file mode 100644 index 2a30d26f554..00000000000 --- a/gnu/packages/patches/qemu-disable-migration-test.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build -index e3c33a86b5..a3bbf9c841 100644 ---- a/tests/qtest/meson.build -+++ b/tests/qtest/meson.build -@@ -2,7 +2,6 @@ slow_qtests = { - 'aspeed_smc-test': 360, - 'cdrom-test' : 610, - 'device-introspect-test' : 720, -- 'migration-test' : 480, - 'npcm7xx_pwm-test': 300, - 'npcm7xx_watchdog_timer-test': 120, - 'qom-test' : 900, -@@ -100,7 +99,6 @@ qtests_i386 = \ - 'cpu-plug-test', - 'q35-test', - 'vmgenid-test', -- 'migration-test', - 'test-x86-cpuid-compat', - 'numa-test' - ] -@@ -173,7 +171,7 @@ qtests_ppc64 = \ - (slirp.found() ? ['pxe-test'] : []) + \ - (config_all_devices.has_key('CONFIG_USB_UHCI') ? ['usb-hcd-uhci-test'] : []) + \ - (config_all_devices.has_key('CONFIG_USB_XHCI_NEC') ? ['usb-hcd-xhci-test'] : []) + \ -- qtests_pci + ['migration-test', 'numa-test', 'cpu-plug-test', 'drive_del-test'] -+ qtests_pci + ['numa-test', 'cpu-plug-test', 'drive_del-test'] - - qtests_sh4 = (config_all_devices.has_key('CONFIG_ISA_TESTDEV') ? ['endianness-test'] : []) - qtests_sh4eb = (config_all_devices.has_key('CONFIG_ISA_TESTDEV') ? ['endianness-test'] : []) -@@ -240,8 +238,7 @@ qtests_aarch64 = \ - config_all_devices.has_key('CONFIG_TPM_TIS_I2C') ? ['tpm-tis-i2c-test'] : []) + \ - ['arm-cpu-features', - 'numa-test', -- 'boot-serial-test', -- 'migration-test'] -+ 'boot-serial-test'] - - qtests_s390x = \ - qtests_filter + \ -@@ -249,8 +246,7 @@ qtests_s390x = \ - 'drive_del-test', - 'device-plug-test', - 'virtio-ccw-test', -- 'cpu-plug-test', -- 'migration-test'] -+ 'cpu-plug-test'] - - qtests_riscv32 = \ - (config_all_devices.has_key('CONFIG_SIFIVE_E_AON') ? ['sifive-e-aon-watchdog-test'] : []) -@@ -324,7 +320,6 @@ qtests = { - 'dbus-vmstate-test': files('migration-helpers.c') + dbus_vmstate1, - 'erst-test': files('erst-test.c'), - 'ivshmem-test': [rt, '../../contrib/ivshmem-server/ivshmem-server.c'], -- 'migration-test': migration_files, - 'pxe-test': files('boot-sector.c'), - 'qos-test': [chardev, io, qos_test_ss.apply({}).sources()], - 'tpm-crb-swtpm-test': [io, tpmemu_files], diff --git a/gnu/packages/patches/qemu-fix-test-virtio-version.patch b/gnu/packages/patches/qemu-fix-test-virtio-version.patch new file mode 100644 index 00000000000..8e466324e7e --- /dev/null +++ b/gnu/packages/patches/qemu-fix-test-virtio-version.patch @@ -0,0 +1,29 @@ +Upstream-status: Sent to qemu-devel@nongnu.org +Message-ID: <20250831125255.7066-1-maxim@guixotic.coop> + +There were some discussion in . + +diff --git a/tests/functional/test_virtio_version.py b/tests/functional/test_virtio_version.py +index a5ea73237f..501545f655 100755 +--- a/tests/functional/test_virtio_version.py ++++ b/tests/functional/test_virtio_version.py +@@ -10,6 +10,8 @@ + # This work is licensed under the terms of the GNU GPL, version 2 or + # later. See the COPYING file in the top-level directory. + ++import os ++ + from qemu.machine import QEMUMachine + from qemu_test import QemuSystemTest + +@@ -68,7 +70,9 @@ def run_device(self, devtype, opts=None, machine='pc'): + """ + Run QEMU with `-device DEVTYPE`, return device info from `query-pci` + """ +- with QEMUMachine(self.qemu_bin) as vm: ++ with QEMUMachine( ++ self.qemu_bin, ++ base_temp_dir=os.environ.get('TMPDIR', '/var/tmp')) as vm: + vm.set_machine(machine) + if opts: + devtype += ',' + opts diff --git a/gnu/packages/patches/qemu-glibc-2.41.patch b/gnu/packages/patches/qemu-glibc-2.41.patch deleted file mode 100644 index 56beab690ef..00000000000 --- a/gnu/packages/patches/qemu-glibc-2.41.patch +++ /dev/null @@ -1,52 +0,0 @@ -from https://gitlab.com/qemu-project/qemu/-/commit/27a8d899c7a100fd5aa040a8b993bb257687c393 - -From 27a8d899c7a100fd5aa040a8b993bb257687c393 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 7 Feb 2025 16:09:20 +0000 -Subject: [PATCH] linux-user: Do not define struct sched_attr if libc headers - do - -glibc 2.41+ has added [1] definitions for sched_setattr and -sched_getattr functions and struct sched_attr. Therefore, it needs -to be checked for here as well before defining sched_attr, to avoid -a compilation failure. - -Define sched_attr conditionally only when SCHED_ATTR_SIZE_VER0 is -not defined. - -[1] https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=21571ca0d70302909cf72707b2a7736cf12190a0;hp=298bc488fdc047da37482f4003023cb9adef78f8 - -Signed-off-by: Khem Raj -Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2799 -Cc: qemu-stable@nongnu.org -Reviewed-by: Peter Maydell -Signed-off-by: Peter Maydell ---- - linux-user/syscall.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 6ee02383daf..df5ed18062c 100644 ---- a/linux-user/syscall.c -+++ b/linux-user/syscall.c -@@ -360,7 +360,8 @@ _syscall3(int, sys_sched_getaffinity, pid_t, pid, unsigned int, len, - #define __NR_sys_sched_setaffinity __NR_sched_setaffinity - _syscall3(int, sys_sched_setaffinity, pid_t, pid, unsigned int, len, - unsigned long *, user_mask_ptr); --/* sched_attr is not defined in glibc */ -+/* sched_attr is not defined in glibc < 2.41 */ -+#ifndef SCHED_ATTR_SIZE_VER0 - struct sched_attr { - uint32_t size; - uint32_t sched_policy; -@@ -373,6 +374,7 @@ struct sched_attr { - uint32_t sched_util_min; - uint32_t sched_util_max; - }; -+#endif - #define __NR_sys_sched_getattr __NR_sched_getattr - _syscall4(int, sys_sched_getattr, pid_t, pid, struct sched_attr *, attr, - unsigned int, size, unsigned int, flags); --- -GitLab - diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index dcd70b430b4..6a098585605 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -15,7 +15,7 @@ ;;; Copyright © 2020, 2021 Brice Waegeneire ;;; Copyright © 2020 Mathieu Othacehe ;;; Copyright © 2020, 2021, 2022 Marius Bakke -;;; Copyright © 2020-2025 Maxim Cournoyer +;;; Copyright © 2020-2025 Maxim Cournoyer ;;; Copyright © 2020 Brett Gilio ;;; Copyright © 2021 Leo Famulari ;;; Copyright © 2021, 2022 Pierre Langlois @@ -196,19 +196,18 @@ (define-public qemu (package (name "qemu") - (version "9.1.3") + (version "10.1.0") (source (origin (method url-fetch) (uri (string-append "https://download.qemu.org/qemu-" version ".tar.xz")) (sha256 - (base32 "12dc3fpv6c6qvw89amjjbb6dgc2f1c1alfgn2nab7a8kxnh7f2j8")) + (base32 "0ldyh3qia7zwv0xq6f67cp567i6ma1hb11gsqaz3x9qcnm4p6lg0")) (patches (search-patches "qemu-build-info-manual.patch" "qemu-disable-bios-tables-test.patch" - "qemu-disable-migration-test.patch" "qemu-fix-agent-paths.patch" - "qemu-glibc-2.41.patch")) + "qemu-fix-test-virtio-version.patch")) (modules '((guix build utils))) (snippet '(begin