From 4b3f8a9dfe0ad9f9fcb11d369bc611e4472285c1 Mon Sep 17 00:00:00 2001 From: "Danilo C. L. de Paula" Date: Thu, 16 May 2019 15:50:01 -0300 Subject: [PATCH] * Thu May 16 2019 Danilo Cesar Lemes de Paula - 4.0.0-1.el8 - 4.0.0 temporary rebase - Resolves: bz#1705235 (Rebase qemu-kvm for RHEL-AV 8.1.0) --- ...ys-bits-limit-48-on-rhel-machine-typ.patch | 62 +++++++++++++++++++ 0022-redhat-Post-rebase-synchronization.patch | 36 +++++++++++ qemu-kvm.spec | 38 ++++++++++-- 3 files changed, 132 insertions(+), 4 deletions(-) create mode 100644 0021-rhel-Set-host-phys-bits-limit-48-on-rhel-machine-typ.patch create mode 100644 0022-redhat-Post-rebase-synchronization.patch diff --git a/0021-rhel-Set-host-phys-bits-limit-48-on-rhel-machine-typ.patch b/0021-rhel-Set-host-phys-bits-limit-48-on-rhel-machine-typ.patch new file mode 100644 index 0000000..2146485 --- /dev/null +++ b/0021-rhel-Set-host-phys-bits-limit-48-on-rhel-machine-typ.patch @@ -0,0 +1,62 @@ +From 26606676d9d88c3f301fb8b3d39941ceff267af5 Mon Sep 17 00:00:00 2001 +From: "plai@redhat.com" +Date: Mon, 13 May 2019 16:27:20 +0200 +Subject: rhel: Set host-phys-bits-limit=48 on rhel machine-types + +RH-Author: plai@redhat.com +Message-id: <1553276715-26278-3-git-send-email-plai@redhat.com> +Patchwork-id: 85126 +O-Subject: [RHEL8.0 qemu-kvm PATCH 2/2] rhel: Set host-phys-bits-limit=48 on rhel machine-types +Bugzilla: 1688915 +RH-Acked-by: Dr. David Alan Gilbert +RH-Acked-by: Eduardo Habkost +RH-Acked-by: Michael S. Tsirkin + +From: Eduardo Habkost + +Upstream status: not applicable + +Currently we use the host physical address size by default on +VMs. This was a good default on most cases, but this is not the +case on host CPUs supporting 5-level EPT. On those cases, we +want VMs to use 4-level EPT by default. + +Ensure VMs will use 4-level EPT by default, by limiting physical +address bits to 48. + +Not applicable upstream because upstream doesn't set +host-phys-bits=on by default. + +Signed-off-by: Eduardo Habkost +Signed-off-by: Danilo C. L. de Paula +(cherry picked from commit 01a2ecb4c38fe4a35455ea706e76984ee8d5a769) +Signed-off-by: Paul Lai +Signed-off-by: Danilo C. L. de Paula + +Rebase notes (4.0.0): +- update to no compat format + +Signed-off-by: Danilo C. L. de Paula +--- + hw/i386/pc.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/hw/i386/pc.c b/hw/i386/pc.c +index 03497eed9a..91a4c5833a 100644 +--- a/hw/i386/pc.c ++++ b/hw/i386/pc.c +@@ -360,6 +360,11 @@ GlobalProperty pc_rhel_compat[] = { + .property = "host-phys-bits", + .value = "on", + }, ++ { /* PC_RHEL_COMPAT */ ++ .driver = TYPE_X86_CPU, ++ .property = "host-phys-bits-limit", ++ .value = "48", ++ }, + { /* PC_RHEL_COMPAT bz 1508330 */ + .driver = "vfio-pci", + .property = "x-no-geforce-quirks", +-- +2.20.1 + diff --git a/0022-redhat-Post-rebase-synchronization.patch b/0022-redhat-Post-rebase-synchronization.patch new file mode 100644 index 0000000..001c982 --- /dev/null +++ b/0022-redhat-Post-rebase-synchronization.patch @@ -0,0 +1,36 @@ +From bbdbdb6ebc696a8bef420b6bd39fb3f5bbe0d5d4 Mon Sep 17 00:00:00 2001 +From: Miroslav Rezanina +Date: Mon, 13 May 2019 16:32:48 +0200 +Subject: redhat: Post rebase synchronization + +We based rebase on qemu-kvm-3.1.0-23.el8. However, 8.0.1 version moved +to qemu-kvm-3.1.0-25.el8. Adding missing changes. + +Merged-patches (4.0.0): +- ebb6e97 redhat: Fix LOCALVERSION creation +- b0ab0cc redhat: enable tpmdev passthrough (not disabling tests) +- 7cb3c4a Enable libpmem to support nvdimm + +Signed-off-by: Miroslav Rezanina +Signed-off-by: Danilo C. L. de Paula +--- + configure | 4 ++++ + redhat/Makefile | 4 ++-- + redhat/qemu-kvm.spec.template | 28 +++++++++++++++++++++++++++- + 3 files changed, 33 insertions(+), 3 deletions(-) + +diff --git a/configure b/configure +index eb0a0dde86..d6d5912ee8 100755 +--- a/configure ++++ b/configure +@@ -2411,6 +2411,10 @@ if test "$seccomp" != "no" ; then + seccomp="no" + fi + fi ++ ++# RHEL8-specific, only passthrough for now, rhbz#1688312 ++tpm_emulator=no ++ + ########################################## + # xen probe + diff --git a/qemu-kvm.spec b/qemu-kvm.spec index 1bbb2d0..d95f994 100644 --- a/qemu-kvm.spec +++ b/qemu-kvm.spec @@ -69,7 +69,7 @@ Obsoletes: %1-rhev Summary: QEMU is a machine emulator and virtualizer Name: qemu-kvm Version: 4.0.0 -Release: 0%{?dist} +Release: 1%{?dist} # Epoch because we pushed a qemu-1.0 package. AIUI this can't ever be dropped Epoch: 15 License: GPLv2 and GPLv2+ and CC-BY @@ -123,6 +123,8 @@ Patch0017: 0017-usb-xhci-Fix-PCI-capability-order.patch Patch0018: 0018-virtio-scsi-Reject-scsi-cd-if-data-plane-enabled-RHE.patch Patch0019: 0019-BZ1653590-Require-at-least-64kiB-pages-for-downstrea.patch Patch0020: 0020-doc-fix-the-configuration-path.patch +Patch0021: 0021-rhel-Set-host-phys-bits-limit-48-on-rhel-machine-typ.patch +Patch0022: 0022-redhat-Post-rebase-synchronization.patch BuildRequires: zlib-devel BuildRequires: glib2-devel @@ -208,6 +210,10 @@ BuildRequires: systemd-devel BuildRequires: libcap-ng-devel BuildRequires: diffutils +%ifarch x86_64 +BuildRequires: libpmem-devel +Requires: libpmem +%endif # qemu-keymap BuildRequires: pkgconfig(xkbcommon) @@ -477,6 +483,11 @@ buildldflags="VL_LDFLAGS=-Wl,--build-id" --enable-vxhs \ %else --disable-vxhs \ +%endif +%ifarch x86_64 + --enable-libpmem \ +%else + --disable-libpmem \ %endif --enable-vhost-user \ %ifarch %{ix86} x86_64 @@ -515,7 +526,7 @@ buildldflags="VL_LDFLAGS=-Wl,--build-id" --enable-snappy \ --disable-sparse \ --disable-strip \ - --disable-tpm \ + --enable-tpm \ --enable-trace-backend=dtrace \ --disable-vde \ --disable-vhost-scsi \ @@ -1040,8 +1051,27 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \ %changelog -* Tue May 7 2019 Danilo Cesar Lemes de Paula - 4.0.0-0.el8 -- Rebase qemu-kvm to 4.0.0 +* Thu May 16 2019 Danilo Cesar Lemes de Paula - 4.0.0-1.el8 +- 4.0.0 temporary rebase +- Resolves: bz#1705235 + (Rebase qemu-kvm for RHEL-AV 8.1.0) + +* Mon May 06 2019 Danilo Cesar Lemes de Paula - 3.1.0-25.el8 +- kvm-redhat-enable-tpmdev-passthrough.patch [bz#1688312] +- kvm-exec-Only-count-mapped-memory-backends-for-qemu_getr.patch [bz#1680492] +- kvm-Enable-libpmem-to-support-nvdimm.patch [bz#1705149] +- Resolves: bz#1680492 + (Qemu quits suddenly while system_reset after hot-plugging unsupported memory by compatible guest on P9 with 1G huge page set) +- Resolves: bz#1688312 + ([RFE] enable TPM passthrough at compile time (qemu-kvm)) +- Resolves: bz#1705149 + (libpmem support is not enabled in qemu-kvm) + +* Fri Apr 26 2019 Danilo Cesar Lemes de Paula - 3.1.0-24.el8 +- kvm-x86-host-phys-bits-limit-option.patch [bz#1688915] +- kvm-rhel-Set-host-phys-bits-limit-48-on-rhel-machine-typ.patch [bz#1688915] +- Resolves: bz#1688915 + ([Intel 8.0 Alpha] physical bits should <= 48 when host with 5level paging &EPT5 and qemu command with "-cpu qemu64" parameters.) * Tue Apr 23 2019 Danilo Cesar Lemes de Paula - 3.1.0-23.el8 - kvm-device_tree-Fix-integer-overflowing-in-load_device_t.patch [bz#1693173]