b705db35b7
- kvm-Acceptance-tests-add-Linux-initrd-checking-test.patch [bz#1669922] - kvm-mmap-alloc-unfold-qemu_ram_mmap.patch [bz#1671519] - kvm-mmap-alloc-fix-hugetlbfs-misaligned-length-in-ppc64.patch [bz#1671519] - kvm-BZ1653590-Require-at-least-64kiB-pages-for-downstrea.patch [bz#1653590] - kvm-block-Fix-invalidate_cache-error-path-for-parent-act.patch [bz#1673014] - kvm-virtio-scsi-Move-BlockBackend-back-to-the-main-AioCo.patch [bz#1656276 bz#1662508] - kvm-scsi-disk-Acquire-the-AioContext-in-scsi_-_realize.patch [bz#1656276 bz#1662508] - kvm-virtio-scsi-Forbid-devices-with-different-iothreads-.patch [bz#1656276 bz#1662508] - Resolves: bz#1653590 ([Fast train]had better stop qemu immediately while guest was making use of an improper page size) - Resolves: bz#1656276 (qemu-kvm core dumped after hotplug the deleted disk with iothread parameter) - Resolves: bz#1662508 (Qemu core dump when start guest with two disks using same drive) - Resolves: bz#1669922 (Backport avocado-qemu tests for QEMU 3.1) - Resolves: bz#1671519 (RHEL8.0 Snapshot3 - qemu doesn't free up hugepage memory when hotplug/hotunplug using memory-backend-file (qemu-kvm)) - Resolves: bz#1673014 (Local VM and migrated VM on the same host can run with same RAW file as visual disk source while without shareable configured or lock manager enabled)
65 lines
2.4 KiB
Diff
65 lines
2.4 KiB
Diff
From b5ede4ceec64a7b812f40457771948420cd3780f Mon Sep 17 00:00:00 2001
|
|
From: David Gibson <dgibson@redhat.com>
|
|
Date: Wed, 6 Feb 2019 03:58:56 +0000
|
|
Subject: [PATCH 4/8] BZ1653590: Require at least 64kiB pages for downstream
|
|
guests & hosts
|
|
|
|
RH-Author: David Gibson <dgibson@redhat.com>
|
|
Message-id: <20190206035856.19058-1-dgibson@redhat.com>
|
|
Patchwork-id: 84246
|
|
O-Subject: [RHELAV-8.0/rhel qemu-kvm PATCH] BZ1653590: Require at least 64kiB pages for downstream guests & hosts
|
|
Bugzilla: 1653590
|
|
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
|
|
RH-Acked-by: Serhii Popovych <spopovyc@redhat.com>
|
|
RH-Acked-by: Thomas Huth <thuth@redhat.com>
|
|
|
|
Most current POWER guests require 64kiB page support, so that's the default
|
|
for the cap-hpt-max-pagesize option in qemu which limits available guest
|
|
page sizes. We warn if the value is set smaller than that, but don't
|
|
outright fail upstream, because we need to allow for the possibility of
|
|
guest (and/or host) kernels configured for 4kiB page sizes.
|
|
|
|
Downstream, however, we simply don't support 4kiB pagesize configured
|
|
kernels in guest or host, so we can have qemu simply error out in this
|
|
situation.
|
|
|
|
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1653590
|
|
Brew: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=20089737
|
|
Branch: rhel8/master-3.1.0
|
|
Testing: Attempted to start a guest with cap-hpt-max-page-size=4k and verified
|
|
it failed immediately with a qemu error
|
|
|
|
Signed-off-by: David Gibson <dgibson@redhat.com>
|
|
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
|
|
---
|
|
hw/ppc/spapr_caps.c | 7 +++++++
|
|
1 file changed, 7 insertions(+)
|
|
|
|
diff --git a/hw/ppc/spapr_caps.c b/hw/ppc/spapr_caps.c
|
|
index 64f98ae..ace7325 100644
|
|
--- a/hw/ppc/spapr_caps.c
|
|
+++ b/hw/ppc/spapr_caps.c
|
|
@@ -325,12 +325,19 @@ void spapr_check_pagesize(sPAPRMachineState *spapr, hwaddr pagesize,
|
|
static void cap_hpt_maxpagesize_apply(sPAPRMachineState *spapr,
|
|
uint8_t val, Error **errp)
|
|
{
|
|
+#if 0 /* disabled for RHEL */
|
|
if (val < 12) {
|
|
error_setg(errp, "Require at least 4kiB hpt-max-page-size");
|
|
return;
|
|
} else if (val < 16) {
|
|
warn_report("Many guests require at least 64kiB hpt-max-page-size");
|
|
}
|
|
+#else /* Only page sizes >=64kiB supported for RHEL */
|
|
+ if (val < 16) {
|
|
+ error_setg(errp, "Require at least 64kiB hpt-max-page-size");
|
|
+ return;
|
|
+ }
|
|
+#endif
|
|
|
|
spapr_check_pagesize(spapr, qemu_getrampagesize(), errp);
|
|
}
|
|
--
|
|
1.8.3.1
|
|
|