Update to 9.2.0-rc3

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2024-12-06 16:11:57 +00:00
parent 2bc7bc3ddf
commit 2ec48f070b
4 changed files with 21 additions and 119 deletions

View File

@ -1,46 +1,33 @@
From 34acc8e0028bf059c9c4e725c653df56eac7c296 Mon Sep 17 00:00:00 2001
Message-ID: <34acc8e0028bf059c9c4e725c653df56eac7c296.1724767601.git.crobinso@redhat.com>
From 63d3792ebe5202121526d5a2077eb42e16f53b79 Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso@redhat.com>
Date: Mon, 26 Aug 2024 14:06:14 -0400
Subject: [PATCH] Disable 9p `local` tests that fail on copr aarch64
Content-type: text/plain
Upstream issue:
https://gitlab.com/qemu-project/qemu/-/issues/2541
Signed-off-by: Cole Robinson <crobinso@redhat.com>
---
tests/qtest/virtio-9p-test.c | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
tests/qtest/virtio-9p-test.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tests/qtest/virtio-9p-test.c b/tests/qtest/virtio-9p-test.c
index 3c8cd235cf..1d550eafb1 100644
index ab3a12c816..261b0c17f1 100644
--- a/tests/qtest/virtio-9p-test.c
+++ b/tests/qtest/virtio-9p-test.c
@@ -748,16 +748,16 @@ static void register_virtio_9p_test(void)
@@ -792,6 +792,7 @@ static void register_virtio_9p_test(void)
/* 9pfs test cases using the 'local' filesystem driver */
opts.before = assign_9p_local_driver;
qos_add_test("local/config", "virtio-9p", pci_config, &opts);
- qos_add_test("local/create_dir", "virtio-9p", fs_create_dir, &opts);
- qos_add_test("local/unlinkat_dir", "virtio-9p", fs_unlinkat_dir, &opts);
- qos_add_test("local/create_file", "virtio-9p", fs_create_file, &opts);
- qos_add_test("local/unlinkat_file", "virtio-9p", fs_unlinkat_file, &opts);
- qos_add_test("local/symlink_file", "virtio-9p", fs_symlink_file, &opts);
- qos_add_test("local/unlinkat_symlink", "virtio-9p", fs_unlinkat_symlink,
- &opts);
- qos_add_test("local/hardlink_file", "virtio-9p", fs_hardlink_file, &opts);
- qos_add_test("local/unlinkat_hardlink", "virtio-9p", fs_unlinkat_hardlink,
- &opts);
+ /* qos_add_test("local/create_dir", "virtio-9p", fs_create_dir, &opts); */
+ /* qos_add_test("local/unlinkat_dir", "virtio-9p", fs_unlinkat_dir, &opts); */
+ /* qos_add_test("local/create_file", "virtio-9p", fs_create_file, &opts); */
+ /* qos_add_test("local/unlinkat_file", "virtio-9p", fs_unlinkat_file, &opts); */
+ /* qos_add_test("local/symlink_file", "virtio-9p", fs_symlink_file, &opts); */
+ /* qos_add_test("local/unlinkat_symlink", "virtio-9p", fs_unlinkat_symlink, */
+ /* &opts); */
+ /* qos_add_test("local/hardlink_file", "virtio-9p", fs_hardlink_file, &opts); */
+ /* qos_add_test("local/unlinkat_hardlink", "virtio-9p", fs_unlinkat_hardlink, */
+ /* &opts); */
+#if 0
qos_add_test("local/create_dir", "virtio-9p", fs_create_dir, &opts);
qos_add_test("local/unlinkat_dir", "virtio-9p", fs_unlinkat_dir, &opts);
qos_add_test("local/create_file", "virtio-9p", fs_create_file, &opts);
@@ -804,6 +805,7 @@ static void register_virtio_9p_test(void)
&opts);
qos_add_test("local/use_after_unlink", "virtio-9p", fs_use_after_unlink,
&opts);
+#endif
}
libqos_init(register_virtio_9p_test);

View File

@ -1,86 +0,0 @@
From 231345d9109bcc6601d570e9e04585493b125b67 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
Date: Fri, 29 Nov 2024 09:29:23 +0000
Subject: [PATCH] hw/virtio: fix crash in processing balloon stats
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
balloon_stats_get_all will iterate over guest stats upto the max
VIRTIO_BALLOON_S_NR value, calling visit_type_uint64 to populate
the QObject dict. The dict keys are obtained from the static
array balloon_stat_names which is VIRTIO_BALLOON_S_NR in size.
Unfortunately the way that array is declared results in any
unassigned stats getting a NULL name, which will then cause
visit_type_uint64 to trigger an assert in qobject_output_add_obj.
The balloon_stat_names array was fortunately fully populated with
names until recently:
commit 0d2eeef77a33315187df8519491a900bde4a3d83
Author: Bibo Mao <maobibo@loongson.cn>
Date: Mon Oct 28 10:38:09 2024 +0800
linux-headers: Update to Linux v6.12-rc5
pulled a change to include/standard-headers/linux/virtio_balloon.h
which increased VIRTIO_BALLOON_S_NR by 6, and failed to add the new
names to balloon_stat_names.
This commit fills in the missing names, and uses a static assert to
guarantee that any future changes to VIRTIO_BALLOON_S_NR will cause
a build failure until balloon_stat_names is updated.
This problem was detected by the Cockpit Project's automated
integration tests on QEMU 9.2.0-rc1.
Fixes: 0d2eeef77a33315187df8519491a900bde4a3d83
Reported-by: Martin Pitt <mpitt@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
hw/virtio/virtio-balloon.c | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/hw/virtio/virtio-balloon.c b/hw/virtio/virtio-balloon.c
index 609e39a821..afd2ad6dd6 100644
--- a/hw/virtio/virtio-balloon.c
+++ b/hw/virtio/virtio-balloon.c
@@ -167,19 +167,33 @@ static void balloon_deflate_page(VirtIOBalloon *balloon,
}
}
+/*
+ * All stats upto VIRTIO_BALLOON_S_NR /must/ have a
+ * non-NULL name declared here, since these are used
+ * as keys for populating the QDict with stats
+ */
static const char *balloon_stat_names[] = {
[VIRTIO_BALLOON_S_SWAP_IN] = "stat-swap-in",
[VIRTIO_BALLOON_S_SWAP_OUT] = "stat-swap-out",
[VIRTIO_BALLOON_S_MAJFLT] = "stat-major-faults",
[VIRTIO_BALLOON_S_MINFLT] = "stat-minor-faults",
[VIRTIO_BALLOON_S_MEMFREE] = "stat-free-memory",
+
[VIRTIO_BALLOON_S_MEMTOT] = "stat-total-memory",
[VIRTIO_BALLOON_S_AVAIL] = "stat-available-memory",
[VIRTIO_BALLOON_S_CACHES] = "stat-disk-caches",
[VIRTIO_BALLOON_S_HTLB_PGALLOC] = "stat-htlb-pgalloc",
[VIRTIO_BALLOON_S_HTLB_PGFAIL] = "stat-htlb-pgfail",
- [VIRTIO_BALLOON_S_NR] = NULL
+
+ [VIRTIO_BALLOON_S_OOM_KILL] = "stat-oom-kills",
+ [VIRTIO_BALLOON_S_ALLOC_STALL] = "stat-alloc-stalls",
+ [VIRTIO_BALLOON_S_ASYNC_SCAN] = "stat-async-scans",
+ [VIRTIO_BALLOON_S_DIRECT_SCAN] = "stat-direct-scans",
+ [VIRTIO_BALLOON_S_ASYNC_RECLAIM] = "stat-async-reclaims",
+
+ [VIRTIO_BALLOON_S_DIRECT_RECLAIM] = "stat-direct-reclaims",
};
+G_STATIC_ASSERT(G_N_ELEMENTS(balloon_stat_names) == VIRTIO_BALLOON_S_NR);
/*
* reset_stats - Mark all items in the stats array as unset
--
2.46.0

View File

@ -374,14 +374,14 @@ Obsoletes: %{name}-system-unicore32-core <= %{epoch}:%{version}-%{release} \
Obsoletes: sgabios-bin <= 1:0.20180715git-10.fc38
# Release candidate version tracking
%global rcver rc1
%global rcver rc3
%if 0%{?rcver:1}
%global rcrel .%{rcver}
%global rcstr -%{rcver}
%endif
# To prevent rpmdev-bumpspec breakage
%global baserelease 0.4
%global baserelease 0.5
Summary: QEMU is a FAST! processor emulator
Name: qemu
@ -436,8 +436,6 @@ Source36: README.tests
Patch: 0001-Disable-9p-local-tests-that-fail-on-copr-aarch64.patch
# Fix compat with new glibc (not upstream yet)
Patch: schedattr.patch
# Crash with virtio-balloon stats
Patch: 0001-hw-virtio-fix-crash-in-processing-balloon-stats.patch
BuildRequires: gnupg2
BuildRequires: meson >= %{meson_version}
@ -3165,6 +3163,9 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
%changelog
* Fri Dec 6 2024 Daniel P. Berrangé <berrange@redhat.com> - 9.2.0-0.5.rc3
- Rebase to qemu 9.2.0-rc3
* Tue Dec 03 2024 Andrea Bolognani <abologna@redhat.com> - 9.2.0-0.4.rc1
- Increase test timeout on riscv64

View File

@ -1,2 +1,2 @@
SHA512 (qemu-9.2.0-rc1.tar.xz) = 7075009bacc4302ab355b415a39ccd19054eb31d7a6f371b9dd446ec54e0dee2c60d3eb0bc34262f0ad2c27fe0caa7afa29494b463548e304442f96ae7b7fb4e
SHA512 (qemu-9.2.0-rc1.tar.xz.sig) = 0b3150ed45fcec187d7704acd09ba765f6ba7a3e8b85cc37ce277aef127357beda53b3cbb773155e3e520014cf4a66b01dc98c6b46d9371a9e0e123843015cfa
SHA512 (qemu-9.2.0-rc3.tar.xz) = 4424b95d9aba25ef580e10551abfb98396e78c5ad0750c478084c96e264f0e2690506287a79075f4bc56c0a9936e066c6b69f31931096c1a5dcd93cc0db6f781
SHA512 (qemu-9.2.0-rc3.tar.xz.sig) = 96cc1b1f062cd12161edafb07015132688d57332d2d7aaec63862a8bd0f37dcba19b63d3d294393e97a9a867c84b5a47e4a0dc37cfa361aea9adb85c54ca24d3