qemu-kvm/kvm-aarch64-Allow-ARM-VIRT-iommu-option-in-RHEL8.1-machi.patch
Danilo C. L. de Paula 0544bace3c * Tue Jun 11 2019 Danilo Cesar Lemes de Paula <ddepaula@redhat.com> - 4.0.0-4.el8
- kvm-Disable-VXHS-support.patch [bz#1714937]
- kvm-aarch64-Add-virt-rhel8.1.0-machine-type-for-ARM.patch [bz#1713735]
- kvm-aarch64-Allow-ARM-VIRT-iommu-option-in-RHEL8.1-machi.patch [bz#1713735]
- kvm-usb-call-reset-handler-before-updating-state.patch [bz#1713679]
- kvm-usb-host-skip-reset-for-untouched-devices.patch [bz#1713679]
- kvm-usb-host-avoid-libusb_set_configuration-calls.patch [bz#1713679]
- kvm-aarch64-Compile-out-IOH3420.patch [bz#1627283]
- kvm-vl-Fix-drive-blockdev-persistent-reservation-managem.patch [bz#1714891]
- kvm-vl-Document-why-objects-are-delayed.patch [bz#1714891]
- Resolves: bz#1627283
  (Compile out IOH3420 on aarch64)
- Resolves: bz#1713679
  (Detached device when trying to upgrade USB device firmware when in doing USB Passthrough via QEMU)
- Resolves: bz#1713735
  (Allow ARM VIRT iommu option in RHEL8.1 machine)
- Resolves: bz#1714891
  (Guest with persistent reservation manager for a disk fails to start)
- Resolves: bz#1714937
  (Disable VXHS support)
2019-06-11 22:15:20 +01:00

67 lines
2.4 KiB
Diff

From 59a46d11cad715b082d30c0de33317466a9bab9e Mon Sep 17 00:00:00 2001
From: Auger Eric <eric.auger@redhat.com>
Date: Mon, 3 Jun 2019 19:17:40 +0100
Subject: [PATCH 3/9] aarch64: Allow ARM VIRT iommu option in RHEL8.1 machine
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
RH-Author: Auger Eric <eric.auger@redhat.com>
Message-id: <20190603191740.32665-3-eric.auger@redhat.com>
Patchwork-id: 88460
O-Subject: [RHEL-AV-8.1.0 qemu-kvm PATCH 2/2] aarch64: Allow ARM VIRT iommu option in RHEL8.1 machine
Bugzilla: 1713735
RH-Acked-by: Andrew Jones <drjones@redhat.com>
RH-Acked-by: Laszlo Ersek <lersek@redhat.com>
RH-Acked-by: Philippe Mathieu-Daudé <philmd@redhat.com>
This patch restores the ARM VIRT iommu option historically
introduced in qemu 3.0 and disabled in rhel8.0 (RHBZ#1656504 /
commit 7bfdb4cd2b49) as we did not have support of the feature
at libvirt level.
Signed-off-by: Eric Auger <eric.auger@redhat.com>
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
---
hw/arm/virt.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 9316a8d..670fa10 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1785,7 +1785,6 @@ static void virt_set_gic_version(Object *obj, const char *value, Error **errp)
}
}
-#if 0 /* Disabled for Red Hat Enterprise Linux */
static char *virt_get_iommu(Object *obj, Error **errp)
{
VirtMachineState *vms = VIRT_MACHINE(obj);
@@ -1813,7 +1812,6 @@ static void virt_set_iommu(Object *obj, const char *value, Error **errp)
error_append_hint(errp, "Valid values are none, smmuv3.\n");
}
}
-#endif /* disabled for RHEL */
static CpuInstanceProperties
virt_cpu_index_to_props(MachineState *ms, unsigned cpu_index)
@@ -2198,8 +2196,13 @@ static void rhel810_virt_instance_init(Object *obj)
NULL);
}
- /* IOMMU is disabled by default and non-configurable for RHEL */
+ /* Default disallows iommu instantiation */
vms->iommu = VIRT_IOMMU_NONE;
+ object_property_add_str(obj, "iommu", virt_get_iommu, virt_set_iommu, NULL);
+ object_property_set_description(obj, "iommu",
+ "Set the IOMMU type. "
+ "Valid values are none and smmuv3",
+ NULL);
vms->irqmap=a15irqmap;
}
--
1.8.3.1