* Mon Oct 07 2024 Miroslav Rezanina <mrezanin@redhat.com> - 9.1.0-3
- kvm-hostmem-Apply-merge-property-after-the-memory-region.patch [RHEL-58936] - Resolves: RHEL-58936 ([RHEL-10.0] QEMU core dump on applying merge property to memory backend)
This commit is contained in:
parent
56d8e9c672
commit
ad7bebfd0a
@ -0,0 +1,61 @@
|
||||
From d0163127a47250170e01e39f48250a2725f531c0 Mon Sep 17 00:00:00 2001
|
||||
From: Gavin Shan <gshan@redhat.com>
|
||||
Date: Tue, 1 Oct 2024 16:58:57 +1000
|
||||
Subject: [PATCH] hostmem: Apply merge property after the memory region is
|
||||
initialized
|
||||
|
||||
RH-Author: Gavin Shan <gshan@redhat.com>
|
||||
RH-MergeRequest: 272: hostmem: Apply merge property after the memory region is initialized
|
||||
RH-Jira: RHEL-58936
|
||||
RH-Acked-by: Cornelia Huck <cohuck@redhat.com>
|
||||
RH-Acked-by: Eric Auger <eric.auger@redhat.com>
|
||||
RH-Acked-by: David Hildenbrand <david@redhat.com>
|
||||
RH-Commit: [1/1] aa47bedf64698b277bb8835f4689d4f1d5eca53c (gwshan/qemu-centos)
|
||||
|
||||
JIRA: https://issues.redhat.com/browse/RHEL-58936
|
||||
|
||||
The semantic change has been introduced by commit 5becdc0ab0 ("hostmem:
|
||||
simplify the code for merge and dump properties") even it clarifies that
|
||||
no senmatic change has been introduced. After the commit, the merge
|
||||
property can be applied even the corresponding memory region isn't
|
||||
initialized yet. This leads to crash dump by the following command
|
||||
lines.
|
||||
|
||||
# /home/gavin/sandbox/qemu.main/build/qemu-system-aarch64 \
|
||||
-accel kvm -machine virt -cpu host \
|
||||
-object memory-backend-ram,id=mem-memN0,size=4096M,merge=off
|
||||
:
|
||||
qemu-system-aarch64: ../system/memory.c:2419: memory_region_get_ram_ptr: \
|
||||
Assertion `mr->ram_block' failed.
|
||||
|
||||
Fix it by applying the merge property only when the memory region is
|
||||
initialized.
|
||||
|
||||
Message-ID: <20240915233117.478169-1-gshan@redhat.com>
|
||||
Fixes: 5becdc0ab083 ("hostmem: simplify the code for merge and dump properties")
|
||||
Reported-by: Zhenyu Zhang <zhenyzha@redhat.com>
|
||||
Tested-by: Zhenyu Zhang <zhenyzha@redhat.com>
|
||||
Signed-off-by: Gavin Shan <gshan@redhat.com>
|
||||
Signed-off-by: David Hildenbrand <david@redhat.com>
|
||||
(cherry picked from commit 78c8f780d3f0d6d17aa93d6f99ff72960080fdd7)
|
||||
Signed-off-by: Gavin Shan <gshan@redhat.com>
|
||||
---
|
||||
backends/hostmem.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/backends/hostmem.c b/backends/hostmem.c
|
||||
index 4e5576a4ad..181446626a 100644
|
||||
--- a/backends/hostmem.c
|
||||
+++ b/backends/hostmem.c
|
||||
@@ -178,7 +178,7 @@ static void host_memory_backend_set_merge(Object *obj, bool value, Error **errp)
|
||||
return;
|
||||
}
|
||||
|
||||
- if (!host_memory_backend_mr_inited(backend) &&
|
||||
+ if (host_memory_backend_mr_inited(backend) &&
|
||||
value != backend->merge) {
|
||||
void *ptr = memory_region_get_ram_ptr(&backend->mr);
|
||||
uint64_t sz = memory_region_size(&backend->mr);
|
||||
--
|
||||
2.39.3
|
||||
|
@ -143,7 +143,7 @@ Obsoletes: %{name}-block-ssh <= %{epoch}:%{version} \
|
||||
Summary: QEMU is a machine emulator and virtualizer
|
||||
Name: qemu-kvm
|
||||
Version: 9.1.0
|
||||
Release: 2%{?rcrel}%{?dist}%{?cc_suffix}
|
||||
Release: 3%{?rcrel}%{?dist}%{?cc_suffix}
|
||||
# Epoch because we pushed a qemu-1.0 package. AIUI this can't ever be dropped
|
||||
# Epoch 15 used for RHEL 8
|
||||
# Epoch 17 used for RHEL 9 (due to release versioning offset in RHEL 8.5)
|
||||
@ -235,6 +235,8 @@ Patch32: kvm-remove-stale-compat-definitions.patch
|
||||
Patch33: kvm-RH-Author-Shaoqin-Huang-shahuang-redhat.com.patch
|
||||
# For RHEL-57028 - fsfreeze hooks break on the systems first restorecon [rhel-10]
|
||||
Patch34: kvm-qemu-guest-agent-Update-the-logfile-path-of-qga-fsfr.patch
|
||||
# For RHEL-58936 - [RHEL-10.0] QEMU core dump on applying merge property to memory backend
|
||||
Patch35: kvm-hostmem-Apply-merge-property-after-the-memory-region.patch
|
||||
|
||||
%if %{have_clang}
|
||||
BuildRequires: clang
|
||||
@ -1302,6 +1304,11 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Oct 07 2024 Miroslav Rezanina <mrezanin@redhat.com> - 9.1.0-3
|
||||
- kvm-hostmem-Apply-merge-property-after-the-memory-region.patch [RHEL-58936]
|
||||
- Resolves: RHEL-58936
|
||||
([RHEL-10.0] QEMU core dump on applying merge property to memory backend)
|
||||
|
||||
* Mon Sep 30 2024 Miroslav Rezanina <mrezanin@redhat.com> - 9.1.0-2
|
||||
- kvm-x86-create-new-pc-q35-machine-type-for-rhel-9.6.patch [RHEL-29002 RHEL-29003 RHEL-35587 RHEL-38411 RHEL-45141]
|
||||
- kvm-arm-create-new-virt-machine-type-for-rhel-9.6.patch [RHEL-29002 RHEL-29003 RHEL-35587 RHEL-38411 RHEL-45141]
|
||||
|
Loading…
Reference in New Issue
Block a user