* Mon Jan 30 2023 Miroslav Rezanina <mrezanin@redhat.com> - 7.2.0-6
- kvm-virtio_net-Modify-virtio_net_get_config-to-early-ret.patch [bz#2141088] - kvm-virtio_net-copy-VIRTIO_NET_S_ANNOUNCE-if-device-mode.patch [bz#2141088] - kvm-vdpa-handle-VIRTIO_NET_CTRL_ANNOUNCE-in-vhost_vdpa_n.patch [bz#2141088] - kvm-vdpa-do-not-handle-VIRTIO_NET_F_GUEST_ANNOUNCE-in-vh.patch [bz#2141088] - kvm-s390x-pv-Implement-a-CGS-check-helper.patch [bz#2122523] - kvm-s390x-pci-coalesce-unmap-operations.patch [bz#2163701] - kvm-s390x-pci-shrink-DMA-aperture-to-be-bound-by-vfio-DM.patch [bz#2163701] - kvm-s390x-pci-reset-ISM-passthrough-devices-on-shutdown-.patch [bz#2163701] - kvm-qga-linux-add-usb-support-to-guest-get-fsinfo.patch [bz#2149191] - Resolves: bz#2141088 (vDPA SVQ guest announce support) - Resolves: bz#2122523 (Secure guest can't boot with maximal number of vcpus (248)) - Resolves: bz#2163701 ([s390x] VM fails to start with ISM passed through) - Resolves: bz#2149191 ([RFE][guest-agent] - USB bus type support)
This commit is contained in:
parent
2fe1fc7b2d
commit
dd0eece2ef
49
kvm-qga-linux-add-usb-support-to-guest-get-fsinfo.patch
Normal file
49
kvm-qga-linux-add-usb-support-to-guest-get-fsinfo.patch
Normal file
@ -0,0 +1,49 @@
|
||||
From 48f45171b89b8ed24f2b2484d63b00ea7818b5c3 Mon Sep 17 00:00:00 2001
|
||||
From: Kfir Manor <kfir@daynix.com>
|
||||
Date: Sun, 22 Jan 2023 17:33:07 +0200
|
||||
Subject: [PATCH 9/9] qga/linux: add usb support to guest-get-fsinfo
|
||||
|
||||
RH-Author: Kostiantyn Kostiuk <kkostiuk@redhat.com>
|
||||
RH-MergeRequest: 140: qga/linux: add usb support to guest-get-fsinfo
|
||||
RH-Bugzilla: 2149191
|
||||
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||
RH-Acked-by: yvugenfi <None>
|
||||
RH-Commit: [1/1] bae929a2d0d0ad20e7308ede69c26499fc2119c7 (kostyanf14/redhat_centos-stream_src_qemu-kvm)
|
||||
|
||||
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2149191
|
||||
Upstream patch: https://patchew.org/QEMU/20230122153307.1050593-1-kfir@daynix.com/
|
||||
|
||||
Signed-off-by: Kfir Manor <kfir@daynix.com>
|
||||
Reviewed-by: Konstantin Kostiuk <kkostiuk@redhat.com>
|
||||
Signed-off-by: Konstantin Kostiuk <kkostiuk@redhat.com>
|
||||
---
|
||||
qga/commands-posix.c | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/qga/commands-posix.c b/qga/commands-posix.c
|
||||
index 32493d6383..f1b2b87c13 100644
|
||||
--- a/qga/commands-posix.c
|
||||
+++ b/qga/commands-posix.c
|
||||
@@ -877,7 +877,9 @@ static bool build_guest_fsinfo_for_pci_dev(char const *syspath,
|
||||
g_str_equal(driver, "sym53c8xx") ||
|
||||
g_str_equal(driver, "virtio-pci") ||
|
||||
g_str_equal(driver, "ahci") ||
|
||||
- g_str_equal(driver, "nvme"))) {
|
||||
+ g_str_equal(driver, "nvme") ||
|
||||
+ g_str_equal(driver, "xhci_hcd") ||
|
||||
+ g_str_equal(driver, "ehci-pci"))) {
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -974,6 +976,8 @@ static bool build_guest_fsinfo_for_pci_dev(char const *syspath,
|
||||
}
|
||||
} else if (strcmp(driver, "nvme") == 0) {
|
||||
disk->bus_type = GUEST_DISK_BUS_TYPE_NVME;
|
||||
+ } else if (strcmp(driver, "ehci-pci") == 0 || strcmp(driver, "xhci_hcd") == 0) {
|
||||
+ disk->bus_type = GUEST_DISK_BUS_TYPE_USB;
|
||||
} else {
|
||||
g_debug("unknown driver '%s' (sysfs path '%s')", driver, syspath);
|
||||
goto cleanup;
|
||||
--
|
||||
2.31.1
|
||||
|
125
kvm-s390x-pci-coalesce-unmap-operations.patch
Normal file
125
kvm-s390x-pci-coalesce-unmap-operations.patch
Normal file
@ -0,0 +1,125 @@
|
||||
From ed90f91b61844abd2dff2eb970f721a6cf072235 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Rosato <mjrosato@linux.ibm.com>
|
||||
Date: Fri, 28 Oct 2022 15:47:57 -0400
|
||||
Subject: [PATCH 6/9] s390x/pci: coalesce unmap operations
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
RH-Author: Cédric Le Goater <clg@redhat.com>
|
||||
RH-MergeRequest: 141: s390x/pci: reset ISM passthrough devices on shutdown and system reset
|
||||
RH-Bugzilla: 2163701
|
||||
RH-Acked-by: Thomas Huth <thuth@redhat.com>
|
||||
RH-Acked-by: Cornelia Huck <cohuck@redhat.com>
|
||||
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||
RH-Commit: [1/3] 80c3a2c1d720057ae2a80b338ea06c9c6c804532 (clegoate/qemu-kvm-c9s)
|
||||
|
||||
Currently, each unmapped page is handled as an individual iommu
|
||||
region notification. Attempt to group contiguous unmap operations
|
||||
into fewer notifications to reduce overhead.
|
||||
|
||||
Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
|
||||
Message-Id: <20221028194758.204007-3-mjrosato@linux.ibm.com>
|
||||
Reviewed-by: Eric Farman <farman@linux.ibm.com>
|
||||
Signed-off-by: Thomas Huth <thuth@redhat.com>
|
||||
(cherry picked from commit ef536007c3301bbd6a787e4c2210ea289adaa6f0)
|
||||
Signed-off-by: Cédric Le Goater <clg@redhat.com>
|
||||
---
|
||||
hw/s390x/s390-pci-inst.c | 51 ++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 51 insertions(+)
|
||||
|
||||
diff --git a/hw/s390x/s390-pci-inst.c b/hw/s390x/s390-pci-inst.c
|
||||
index 7cc4bcf850..66e764f901 100644
|
||||
--- a/hw/s390x/s390-pci-inst.c
|
||||
+++ b/hw/s390x/s390-pci-inst.c
|
||||
@@ -640,6 +640,8 @@ static uint32_t s390_pci_update_iotlb(S390PCIIOMMU *iommu,
|
||||
}
|
||||
g_hash_table_remove(iommu->iotlb, &entry->iova);
|
||||
inc_dma_avail(iommu);
|
||||
+ /* Don't notify the iommu yet, maybe we can bundle contiguous unmaps */
|
||||
+ goto out;
|
||||
} else {
|
||||
if (cache) {
|
||||
if (cache->perm == entry->perm &&
|
||||
@@ -663,15 +665,44 @@ static uint32_t s390_pci_update_iotlb(S390PCIIOMMU *iommu,
|
||||
dec_dma_avail(iommu);
|
||||
}
|
||||
|
||||
+ /*
|
||||
+ * All associated iotlb entries have already been cleared, trigger the
|
||||
+ * unmaps.
|
||||
+ */
|
||||
memory_region_notify_iommu(&iommu->iommu_mr, 0, event);
|
||||
|
||||
out:
|
||||
return iommu->dma_limit ? iommu->dma_limit->avail : 1;
|
||||
}
|
||||
|
||||
+static void s390_pci_batch_unmap(S390PCIIOMMU *iommu, uint64_t iova,
|
||||
+ uint64_t len)
|
||||
+{
|
||||
+ uint64_t remain = len, start = iova, end = start + len - 1, mask, size;
|
||||
+ IOMMUTLBEvent event = {
|
||||
+ .type = IOMMU_NOTIFIER_UNMAP,
|
||||
+ .entry = {
|
||||
+ .target_as = &address_space_memory,
|
||||
+ .translated_addr = 0,
|
||||
+ .perm = IOMMU_NONE,
|
||||
+ },
|
||||
+ };
|
||||
+
|
||||
+ while (remain >= TARGET_PAGE_SIZE) {
|
||||
+ mask = dma_aligned_pow2_mask(start, end, 64);
|
||||
+ size = mask + 1;
|
||||
+ event.entry.iova = start;
|
||||
+ event.entry.addr_mask = mask;
|
||||
+ memory_region_notify_iommu(&iommu->iommu_mr, 0, event);
|
||||
+ start += size;
|
||||
+ remain -= size;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
int rpcit_service_call(S390CPU *cpu, uint8_t r1, uint8_t r2, uintptr_t ra)
|
||||
{
|
||||
CPUS390XState *env = &cpu->env;
|
||||
+ uint64_t iova, coalesce = 0;
|
||||
uint32_t fh;
|
||||
uint16_t error = 0;
|
||||
S390PCIBusDevice *pbdev;
|
||||
@@ -742,6 +773,21 @@ int rpcit_service_call(S390CPU *cpu, uint8_t r1, uint8_t r2, uintptr_t ra)
|
||||
break;
|
||||
}
|
||||
|
||||
+ /*
|
||||
+ * If this is an unmap of a PTE, let's try to coalesce multiple unmaps
|
||||
+ * into as few notifier events as possible.
|
||||
+ */
|
||||
+ if (entry.perm == IOMMU_NONE && entry.len == TARGET_PAGE_SIZE) {
|
||||
+ if (coalesce == 0) {
|
||||
+ iova = entry.iova;
|
||||
+ }
|
||||
+ coalesce += entry.len;
|
||||
+ } else if (coalesce > 0) {
|
||||
+ /* Unleash the coalesced unmap before processing a new map */
|
||||
+ s390_pci_batch_unmap(iommu, iova, coalesce);
|
||||
+ coalesce = 0;
|
||||
+ }
|
||||
+
|
||||
start += entry.len;
|
||||
while (entry.iova < start && entry.iova < end) {
|
||||
if (dma_avail > 0 || entry.perm == IOMMU_NONE) {
|
||||
@@ -759,6 +805,11 @@ int rpcit_service_call(S390CPU *cpu, uint8_t r1, uint8_t r2, uintptr_t ra)
|
||||
}
|
||||
}
|
||||
}
|
||||
+ if (coalesce) {
|
||||
+ /* Unleash the coalesced unmap before finishing rpcit */
|
||||
+ s390_pci_batch_unmap(iommu, iova, coalesce);
|
||||
+ coalesce = 0;
|
||||
+ }
|
||||
if (again && dma_avail > 0)
|
||||
goto retry;
|
||||
err:
|
||||
--
|
||||
2.31.1
|
||||
|
147
kvm-s390x-pci-reset-ISM-passthrough-devices-on-shutdown-.patch
Normal file
147
kvm-s390x-pci-reset-ISM-passthrough-devices-on-shutdown-.patch
Normal file
@ -0,0 +1,147 @@
|
||||
From 1ed1f8fc20a4883bc0bc1f58d299b0278abc5442 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Rosato <mjrosato@linux.ibm.com>
|
||||
Date: Fri, 9 Dec 2022 14:57:00 -0500
|
||||
Subject: [PATCH 8/9] s390x/pci: reset ISM passthrough devices on shutdown and
|
||||
system reset
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
RH-Author: Cédric Le Goater <clg@redhat.com>
|
||||
RH-MergeRequest: 141: s390x/pci: reset ISM passthrough devices on shutdown and system reset
|
||||
RH-Bugzilla: 2163701
|
||||
RH-Acked-by: Thomas Huth <thuth@redhat.com>
|
||||
RH-Acked-by: Cornelia Huck <cohuck@redhat.com>
|
||||
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||
RH-Commit: [3/3] c531352b9d57f51ba938d4c46ee19a5706ade697 (clegoate/qemu-kvm-c9s)
|
||||
|
||||
ISM device firmware stores unique state information that can
|
||||
can cause a wholesale unmap of the associated IOMMU (e.g. when
|
||||
we get a termination signal for QEMU) to trigger firmware errors
|
||||
because firmware believes we are attempting to invalidate entries
|
||||
that are still in-use by the guest OS (when in fact that guest is
|
||||
in the process of being terminated or rebooted).
|
||||
To alleviate this, register both a shutdown notifier (for unexpected
|
||||
termination cases e.g. virsh destroy) as well as a reset callback
|
||||
(for cases like guest OS reboot). For each of these scenarios, trigger
|
||||
PCI device reset; this is enough to indicate to firmware that the IOMMU
|
||||
is no longer in-use by the guest OS, making it safe to invalidate any
|
||||
associated IOMMU entries.
|
||||
|
||||
Fixes: 15d0e7942d3b ("s390x/pci: don't fence interpreted devices without MSI-X")
|
||||
Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
|
||||
Message-Id: <20221209195700.263824-1-mjrosato@linux.ibm.com>
|
||||
Reviewed-by: Eric Farman <farman@linux.ibm.com>
|
||||
[thuth: Adjusted the hunk in s390-pci-vfio.c due to different context]
|
||||
Signed-off-by: Thomas Huth <thuth@redhat.com>
|
||||
(cherry picked from commit 03451953c79e6b31f7860ee0c35b28e181d573c1)
|
||||
Signed-off-by: Cédric Le Goater <clg@redhat.com>
|
||||
---
|
||||
hw/s390x/s390-pci-bus.c | 28 ++++++++++++++++++++++++++++
|
||||
hw/s390x/s390-pci-vfio.c | 2 ++
|
||||
include/hw/s390x/s390-pci-bus.h | 5 +++++
|
||||
3 files changed, 35 insertions(+)
|
||||
|
||||
diff --git a/hw/s390x/s390-pci-bus.c b/hw/s390x/s390-pci-bus.c
|
||||
index 977e7daa15..02751f3597 100644
|
||||
--- a/hw/s390x/s390-pci-bus.c
|
||||
+++ b/hw/s390x/s390-pci-bus.c
|
||||
@@ -24,6 +24,8 @@
|
||||
#include "hw/pci/msi.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "qemu/module.h"
|
||||
+#include "sysemu/reset.h"
|
||||
+#include "sysemu/runstate.h"
|
||||
|
||||
#ifndef DEBUG_S390PCI_BUS
|
||||
#define DEBUG_S390PCI_BUS 0
|
||||
@@ -150,10 +152,30 @@ out:
|
||||
psccb->header.response_code = cpu_to_be16(rc);
|
||||
}
|
||||
|
||||
+static void s390_pci_shutdown_notifier(Notifier *n, void *opaque)
|
||||
+{
|
||||
+ S390PCIBusDevice *pbdev = container_of(n, S390PCIBusDevice,
|
||||
+ shutdown_notifier);
|
||||
+
|
||||
+ pci_device_reset(pbdev->pdev);
|
||||
+}
|
||||
+
|
||||
+static void s390_pci_reset_cb(void *opaque)
|
||||
+{
|
||||
+ S390PCIBusDevice *pbdev = opaque;
|
||||
+
|
||||
+ pci_device_reset(pbdev->pdev);
|
||||
+}
|
||||
+
|
||||
static void s390_pci_perform_unplug(S390PCIBusDevice *pbdev)
|
||||
{
|
||||
HotplugHandler *hotplug_ctrl;
|
||||
|
||||
+ if (pbdev->pft == ZPCI_PFT_ISM) {
|
||||
+ notifier_remove(&pbdev->shutdown_notifier);
|
||||
+ qemu_unregister_reset(s390_pci_reset_cb, pbdev);
|
||||
+ }
|
||||
+
|
||||
/* Unplug the PCI device */
|
||||
if (pbdev->pdev) {
|
||||
DeviceState *pdev = DEVICE(pbdev->pdev);
|
||||
@@ -1111,6 +1133,12 @@ static void s390_pcihost_plug(HotplugHandler *hotplug_dev, DeviceState *dev,
|
||||
pbdev->fh |= FH_SHM_VFIO;
|
||||
pbdev->forwarding_assist = false;
|
||||
}
|
||||
+ /* Register shutdown notifier and reset callback for ISM devices */
|
||||
+ if (pbdev->pft == ZPCI_PFT_ISM) {
|
||||
+ pbdev->shutdown_notifier.notify = s390_pci_shutdown_notifier;
|
||||
+ qemu_register_shutdown_notifier(&pbdev->shutdown_notifier);
|
||||
+ qemu_register_reset(s390_pci_reset_cb, pbdev);
|
||||
+ }
|
||||
} else {
|
||||
pbdev->fh |= FH_SHM_EMUL;
|
||||
/* Always intercept emulated devices */
|
||||
diff --git a/hw/s390x/s390-pci-vfio.c b/hw/s390x/s390-pci-vfio.c
|
||||
index f7bf36cec8..f51190d466 100644
|
||||
--- a/hw/s390x/s390-pci-vfio.c
|
||||
+++ b/hw/s390x/s390-pci-vfio.c
|
||||
@@ -124,6 +124,8 @@ static void s390_pci_read_base(S390PCIBusDevice *pbdev,
|
||||
/* The following values remain 0 until we support other FMB formats */
|
||||
pbdev->zpci_fn.fmbl = 0;
|
||||
pbdev->zpci_fn.pft = 0;
|
||||
+ /* Store function type separately for type-specific behavior */
|
||||
+ pbdev->pft = cap->pft;
|
||||
|
||||
/*
|
||||
* If appropriate, reduce the size of the supported DMA aperture reported
|
||||
diff --git a/include/hw/s390x/s390-pci-bus.h b/include/hw/s390x/s390-pci-bus.h
|
||||
index 1c46e3a269..e0a9f9385b 100644
|
||||
--- a/include/hw/s390x/s390-pci-bus.h
|
||||
+++ b/include/hw/s390x/s390-pci-bus.h
|
||||
@@ -39,6 +39,9 @@
|
||||
#define UID_CHECKING_ENABLED 0x01
|
||||
#define ZPCI_DTSM 0x40
|
||||
|
||||
+/* zPCI Function Types */
|
||||
+#define ZPCI_PFT_ISM 5
|
||||
+
|
||||
OBJECT_DECLARE_SIMPLE_TYPE(S390pciState, S390_PCI_HOST_BRIDGE)
|
||||
OBJECT_DECLARE_SIMPLE_TYPE(S390PCIBus, S390_PCI_BUS)
|
||||
OBJECT_DECLARE_SIMPLE_TYPE(S390PCIBusDevice, S390_PCI_DEVICE)
|
||||
@@ -344,6 +347,7 @@ struct S390PCIBusDevice {
|
||||
uint16_t noi;
|
||||
uint16_t maxstbl;
|
||||
uint8_t sum;
|
||||
+ uint8_t pft;
|
||||
S390PCIGroup *pci_group;
|
||||
ClpRspQueryPci zpci_fn;
|
||||
S390MsixInfo msix;
|
||||
@@ -352,6 +356,7 @@ struct S390PCIBusDevice {
|
||||
MemoryRegion msix_notify_mr;
|
||||
IndAddr *summary_ind;
|
||||
IndAddr *indicator;
|
||||
+ Notifier shutdown_notifier;
|
||||
bool pci_unplug_request_processed;
|
||||
bool unplug_requested;
|
||||
bool interp;
|
||||
--
|
||||
2.31.1
|
||||
|
@ -0,0 +1,91 @@
|
||||
From ee69c8c57fe62fc200f749c4ce3927c88803644d Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Rosato <mjrosato@linux.ibm.com>
|
||||
Date: Fri, 28 Oct 2022 15:47:58 -0400
|
||||
Subject: [PATCH 7/9] s390x/pci: shrink DMA aperture to be bound by vfio DMA
|
||||
limit
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
RH-Author: Cédric Le Goater <clg@redhat.com>
|
||||
RH-MergeRequest: 141: s390x/pci: reset ISM passthrough devices on shutdown and system reset
|
||||
RH-Bugzilla: 2163701
|
||||
RH-Acked-by: Thomas Huth <thuth@redhat.com>
|
||||
RH-Acked-by: Cornelia Huck <cohuck@redhat.com>
|
||||
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
|
||||
RH-Commit: [2/3] 0956bbb4773dd0085f6aed59d6284c704b4fed3b (clegoate/qemu-kvm-c9s)
|
||||
|
||||
Currently, s390x-pci performs accounting against the vfio DMA
|
||||
limit and triggers the guest to clean up mappings when the limit
|
||||
is reached. Let's go a step further and also limit the size of
|
||||
the supported DMA aperture reported to the guest based upon the
|
||||
initial vfio DMA limit reported for the container (if less than
|
||||
than the size reported by the firmware/host zPCI layer). This
|
||||
avoids processing sections of the guest DMA table during global
|
||||
refresh that, for common use cases, will never be used anway, and
|
||||
makes exhausting the vfio DMA limit due to mismatch between guest
|
||||
aperture size and host limit far less likely and more indicitive
|
||||
of an error.
|
||||
|
||||
Signed-off-by: Matthew Rosato <mjrosato@linux.ibm.com>
|
||||
Message-Id: <20221028194758.204007-4-mjrosato@linux.ibm.com>
|
||||
Reviewed-by: Eric Farman <farman@linux.ibm.com>
|
||||
Signed-off-by: Thomas Huth <thuth@redhat.com>
|
||||
(cherry picked from commit df202e3ff3fccb49868e08f20d0bda86cb953fbe)
|
||||
Signed-off-by: Cédric Le Goater <clg@redhat.com>
|
||||
---
|
||||
hw/s390x/s390-pci-vfio.c | 11 +++++++++++
|
||||
include/hw/s390x/s390-pci-bus.h | 1 +
|
||||
2 files changed, 12 insertions(+)
|
||||
|
||||
diff --git a/hw/s390x/s390-pci-vfio.c b/hw/s390x/s390-pci-vfio.c
|
||||
index 5f0adb0b4a..f7bf36cec8 100644
|
||||
--- a/hw/s390x/s390-pci-vfio.c
|
||||
+++ b/hw/s390x/s390-pci-vfio.c
|
||||
@@ -84,6 +84,7 @@ S390PCIDMACount *s390_pci_start_dma_count(S390pciState *s,
|
||||
cnt->users = 1;
|
||||
cnt->avail = avail;
|
||||
QTAILQ_INSERT_TAIL(&s->zpci_dma_limit, cnt, link);
|
||||
+ pbdev->iommu->max_dma_limit = avail;
|
||||
return cnt;
|
||||
}
|
||||
|
||||
@@ -103,6 +104,7 @@ static void s390_pci_read_base(S390PCIBusDevice *pbdev,
|
||||
struct vfio_info_cap_header *hdr;
|
||||
struct vfio_device_info_cap_zpci_base *cap;
|
||||
VFIOPCIDevice *vpci = container_of(pbdev->pdev, VFIOPCIDevice, pdev);
|
||||
+ uint64_t vfio_size;
|
||||
|
||||
hdr = vfio_get_device_info_cap(info, VFIO_DEVICE_INFO_CAP_ZPCI_BASE);
|
||||
|
||||
@@ -122,6 +124,15 @@ static void s390_pci_read_base(S390PCIBusDevice *pbdev,
|
||||
/* The following values remain 0 until we support other FMB formats */
|
||||
pbdev->zpci_fn.fmbl = 0;
|
||||
pbdev->zpci_fn.pft = 0;
|
||||
+
|
||||
+ /*
|
||||
+ * If appropriate, reduce the size of the supported DMA aperture reported
|
||||
+ * to the guest based upon the vfio DMA limit.
|
||||
+ */
|
||||
+ vfio_size = pbdev->iommu->max_dma_limit << TARGET_PAGE_BITS;
|
||||
+ if (vfio_size < (cap->end_dma - cap->start_dma + 1)) {
|
||||
+ pbdev->zpci_fn.edma = cap->start_dma + vfio_size - 1;
|
||||
+ }
|
||||
}
|
||||
|
||||
static bool get_host_fh(S390PCIBusDevice *pbdev, struct vfio_device_info *info,
|
||||
diff --git a/include/hw/s390x/s390-pci-bus.h b/include/hw/s390x/s390-pci-bus.h
|
||||
index 0605fcea24..1c46e3a269 100644
|
||||
--- a/include/hw/s390x/s390-pci-bus.h
|
||||
+++ b/include/hw/s390x/s390-pci-bus.h
|
||||
@@ -278,6 +278,7 @@ struct S390PCIIOMMU {
|
||||
uint64_t g_iota;
|
||||
uint64_t pba;
|
||||
uint64_t pal;
|
||||
+ uint64_t max_dma_limit;
|
||||
GHashTable *iotlb;
|
||||
S390PCIDMACount *dma_limit;
|
||||
};
|
||||
--
|
||||
2.31.1
|
||||
|
109
kvm-s390x-pv-Implement-a-CGS-check-helper.patch
Normal file
109
kvm-s390x-pv-Implement-a-CGS-check-helper.patch
Normal file
@ -0,0 +1,109 @@
|
||||
From 9452246e59a5f16f44fdf9a7d514b947faf1d5fc Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= <clg@redhat.com>
|
||||
Date: Mon, 16 Jan 2023 18:46:05 +0100
|
||||
Subject: [PATCH 5/9] s390x/pv: Implement a CGS check helper
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
RH-Author: Cédric Le Goater <clg@redhat.com>
|
||||
RH-MergeRequest: 139: s390x/pv: Implement a CGS check helper
|
||||
RH-Bugzilla: 2122523
|
||||
RH-Acked-by: Thomas Huth <thuth@redhat.com>
|
||||
RH-Acked-by: Cornelia Huck <cohuck@redhat.com>
|
||||
RH-Acked-by: David Hildenbrand <david@redhat.com>
|
||||
RH-Commit: [1/1] 8551ce772b10de653b4e1c8be60aae60ec98b421 (clegoate/qemu-kvm-c9s)
|
||||
|
||||
When a protected VM is started with the maximum number of CPUs (248),
|
||||
the service call providing information on the CPUs requires more
|
||||
buffer space than allocated and QEMU disgracefully aborts :
|
||||
|
||||
LOADPARM=[........]
|
||||
Using virtio-blk.
|
||||
Using SCSI scheme.
|
||||
...................................................................................
|
||||
qemu-system-s390x: KVM_S390_MEM_OP failed: Argument list too long
|
||||
|
||||
When protected virtualization is initialized, compute the maximum
|
||||
number of vCPUs supported by the machine and return useful information
|
||||
to the user before the machine starts in case of error.
|
||||
|
||||
Suggested-by: Thomas Huth <thuth@redhat.com>
|
||||
Reviewed-by: Thomas Huth <thuth@redhat.com>
|
||||
Signed-off-by: Cédric Le Goater <clg@redhat.com>
|
||||
Message-Id: <20230116174607.2459498-2-clg@kaod.org>
|
||||
Signed-off-by: Thomas Huth <thuth@redhat.com>
|
||||
(cherry picked from commit 75d7150c636569f6687f7e70a33be893be43eb5f)
|
||||
Signed-off-by: Cédric Le Goater <clg@redhat.com>
|
||||
---
|
||||
hw/s390x/pv.c | 40 ++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 40 insertions(+)
|
||||
|
||||
diff --git a/hw/s390x/pv.c b/hw/s390x/pv.c
|
||||
index 8dfe92d8df..8a1c71436b 100644
|
||||
--- a/hw/s390x/pv.c
|
||||
+++ b/hw/s390x/pv.c
|
||||
@@ -20,6 +20,7 @@
|
||||
#include "exec/confidential-guest-support.h"
|
||||
#include "hw/s390x/ipl.h"
|
||||
#include "hw/s390x/pv.h"
|
||||
+#include "hw/s390x/sclp.h"
|
||||
#include "target/s390x/kvm/kvm_s390x.h"
|
||||
|
||||
static bool info_valid;
|
||||
@@ -249,6 +250,41 @@ struct S390PVGuestClass {
|
||||
ConfidentialGuestSupportClass parent_class;
|
||||
};
|
||||
|
||||
+/*
|
||||
+ * If protected virtualization is enabled, the amount of data that the
|
||||
+ * Read SCP Info Service Call can use is limited to one page. The
|
||||
+ * available space also depends on the Extended-Length SCCB (ELS)
|
||||
+ * feature which can take more buffer space to store feature
|
||||
+ * information. This impacts the maximum number of CPUs supported in
|
||||
+ * the machine.
|
||||
+ */
|
||||
+static uint32_t s390_pv_get_max_cpus(void)
|
||||
+{
|
||||
+ int offset_cpu = s390_has_feat(S390_FEAT_EXTENDED_LENGTH_SCCB) ?
|
||||
+ offsetof(ReadInfo, entries) : SCLP_READ_SCP_INFO_FIXED_CPU_OFFSET;
|
||||
+
|
||||
+ return (TARGET_PAGE_SIZE - offset_cpu) / sizeof(CPUEntry);
|
||||
+}
|
||||
+
|
||||
+static bool s390_pv_check_cpus(Error **errp)
|
||||
+{
|
||||
+ MachineState *ms = MACHINE(qdev_get_machine());
|
||||
+ uint32_t pv_max_cpus = s390_pv_get_max_cpus();
|
||||
+
|
||||
+ if (ms->smp.max_cpus > pv_max_cpus) {
|
||||
+ error_setg(errp, "Protected VMs support a maximum of %d CPUs",
|
||||
+ pv_max_cpus);
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
+ return true;
|
||||
+}
|
||||
+
|
||||
+static bool s390_pv_guest_check(ConfidentialGuestSupport *cgs, Error **errp)
|
||||
+{
|
||||
+ return s390_pv_check_cpus(errp);
|
||||
+}
|
||||
+
|
||||
int s390_pv_kvm_init(ConfidentialGuestSupport *cgs, Error **errp)
|
||||
{
|
||||
if (!object_dynamic_cast(OBJECT(cgs), TYPE_S390_PV_GUEST)) {
|
||||
@@ -261,6 +297,10 @@ int s390_pv_kvm_init(ConfidentialGuestSupport *cgs, Error **errp)
|
||||
return -1;
|
||||
}
|
||||
|
||||
+ if (!s390_pv_guest_check(cgs, errp)) {
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
cgs->ready = true;
|
||||
|
||||
return 0;
|
||||
--
|
||||
2.31.1
|
||||
|
@ -0,0 +1,44 @@
|
||||
From fbb177ad84d562a20e51e71c73257d2ef85be2d9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Eugenio=20P=C3=A9rez?= <eperezma@redhat.com>
|
||||
Date: Wed, 21 Dec 2022 12:50:15 +0100
|
||||
Subject: [PATCH 4/9] vdpa: do not handle VIRTIO_NET_F_GUEST_ANNOUNCE in
|
||||
vhost-vdpa
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
RH-Author: Eugenio Pérez <eperezma@redhat.com>
|
||||
RH-MergeRequest: 137: vDPA net SVQ guest announce support
|
||||
RH-Bugzilla: 2141088
|
||||
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
|
||||
RH-Acked-by: Cindy Lu <lulu@redhat.com>
|
||||
RH-Acked-by: Jason Wang <jasowang@redhat.com>
|
||||
RH-Commit: [4/4] b3960a8b3e4ca569b1b1e6ceccf2051d8c4b1079 (eperezmartin/qemu-kvm)
|
||||
|
||||
So qemu emulates it even in case the device does not support it.
|
||||
|
||||
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
|
||||
Acked-by: Jason Wang <jasowang@redhat.com>
|
||||
Message-Id: <20221221115015.1400889-5-eperezma@redhat.com>
|
||||
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
(cherry picked from commit 980003debddd18306ea2e1364b96598383c0e257)
|
||||
---
|
||||
net/vhost-vdpa.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/net/vhost-vdpa.c b/net/vhost-vdpa.c
|
||||
index 52ef9cb3a2..b06540ac89 100644
|
||||
--- a/net/vhost-vdpa.c
|
||||
+++ b/net/vhost-vdpa.c
|
||||
@@ -72,7 +72,6 @@ const int vdpa_feature_bits[] = {
|
||||
VIRTIO_F_RING_RESET,
|
||||
VIRTIO_NET_F_RSS,
|
||||
VIRTIO_NET_F_HASH_REPORT,
|
||||
- VIRTIO_NET_F_GUEST_ANNOUNCE,
|
||||
VIRTIO_NET_F_STATUS,
|
||||
VHOST_INVALID_FEATURE_BIT
|
||||
};
|
||||
--
|
||||
2.31.1
|
||||
|
@ -0,0 +1,59 @@
|
||||
From b71724e94c94acd6e09fed2b47be2901799c2353 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Eugenio=20P=C3=A9rez?= <eperezma@redhat.com>
|
||||
Date: Wed, 21 Dec 2022 12:50:14 +0100
|
||||
Subject: [PATCH 3/9] vdpa: handle VIRTIO_NET_CTRL_ANNOUNCE in
|
||||
vhost_vdpa_net_handle_ctrl_avail
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
RH-Author: Eugenio Pérez <eperezma@redhat.com>
|
||||
RH-MergeRequest: 137: vDPA net SVQ guest announce support
|
||||
RH-Bugzilla: 2141088
|
||||
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
|
||||
RH-Acked-by: Cindy Lu <lulu@redhat.com>
|
||||
RH-Acked-by: Jason Wang <jasowang@redhat.com>
|
||||
RH-Commit: [3/4] c4ef5b62a5d41911565b8960a88bb48d746ff6c7 (eperezmartin/qemu-kvm)
|
||||
|
||||
Since this capability is emulated by qemu shadowed CVQ cannot forward it
|
||||
to the device. Process all that command within qemu.
|
||||
|
||||
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
|
||||
Message-Id: <20221221115015.1400889-4-eperezma@redhat.com>
|
||||
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
Acked-by: Jason Wang <jasowang@redhat.com>
|
||||
(cherry picked from commit 3f9a3eeb7ca6acd899e2205a9118928b4cd94e47)
|
||||
---
|
||||
net/vhost-vdpa.c | 15 ++++++++++++---
|
||||
1 file changed, 12 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/net/vhost-vdpa.c b/net/vhost-vdpa.c
|
||||
index 2b4b85d8f8..52ef9cb3a2 100644
|
||||
--- a/net/vhost-vdpa.c
|
||||
+++ b/net/vhost-vdpa.c
|
||||
@@ -489,9 +489,18 @@ static int vhost_vdpa_net_handle_ctrl_avail(VhostShadowVirtqueue *svq,
|
||||
out.iov_len = iov_to_buf(elem->out_sg, elem->out_num, 0,
|
||||
s->cvq_cmd_out_buffer,
|
||||
vhost_vdpa_net_cvq_cmd_len());
|
||||
- dev_written = vhost_vdpa_net_cvq_add(s, out.iov_len, sizeof(status));
|
||||
- if (unlikely(dev_written < 0)) {
|
||||
- goto out;
|
||||
+ if (*(uint8_t *)s->cvq_cmd_out_buffer == VIRTIO_NET_CTRL_ANNOUNCE) {
|
||||
+ /*
|
||||
+ * Guest announce capability is emulated by qemu, so don't forward to
|
||||
+ * the device.
|
||||
+ */
|
||||
+ dev_written = sizeof(status);
|
||||
+ *s->status = VIRTIO_NET_OK;
|
||||
+ } else {
|
||||
+ dev_written = vhost_vdpa_net_cvq_add(s, out.iov_len, sizeof(status));
|
||||
+ if (unlikely(dev_written < 0)) {
|
||||
+ goto out;
|
||||
+ }
|
||||
}
|
||||
|
||||
if (unlikely(dev_written < sizeof(status))) {
|
||||
--
|
||||
2.31.1
|
||||
|
@ -0,0 +1,74 @@
|
||||
From 3f55d12df35552ae948587a62d6f9015664adc13 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Eugenio=20P=C3=A9rez?= <eperezma@redhat.com>
|
||||
Date: Wed, 21 Dec 2022 12:50:12 +0100
|
||||
Subject: [PATCH 1/9] virtio_net: Modify virtio_net_get_config to early return
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
RH-Author: Eugenio Pérez <eperezma@redhat.com>
|
||||
RH-MergeRequest: 137: vDPA net SVQ guest announce support
|
||||
RH-Bugzilla: 2141088
|
||||
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
|
||||
RH-Acked-by: Cindy Lu <lulu@redhat.com>
|
||||
RH-Acked-by: Jason Wang <jasowang@redhat.com>
|
||||
RH-Commit: [1/4] 4f5e79afd54e157f32e6fff56ae33e2b71492525 (eperezmartin/qemu-kvm)
|
||||
|
||||
Next patches introduce more code on vhost-vdpa branch, with already have
|
||||
too much indentation.
|
||||
|
||||
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
|
||||
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
|
||||
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
Acked-by: Jason Wang <jasowang@redhat.com>
|
||||
Message-Id: <20221221115015.1400889-2-eperezma@redhat.com>
|
||||
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
(cherry picked from commit ebc141a62508dc91901373c1a19fe7e2cf560dfb)
|
||||
---
|
||||
hw/net/virtio-net.c | 28 +++++++++++++++-------------
|
||||
1 file changed, 15 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
|
||||
index ec974f7a76..5935e55653 100644
|
||||
--- a/hw/net/virtio-net.c
|
||||
+++ b/hw/net/virtio-net.c
|
||||
@@ -168,20 +168,22 @@ static void virtio_net_get_config(VirtIODevice *vdev, uint8_t *config)
|
||||
if (nc->peer && nc->peer->info->type == NET_CLIENT_DRIVER_VHOST_VDPA) {
|
||||
ret = vhost_net_get_config(get_vhost_net(nc->peer), (uint8_t *)&netcfg,
|
||||
n->config_size);
|
||||
- if (ret != -1) {
|
||||
- /*
|
||||
- * Some NIC/kernel combinations present 0 as the mac address. As
|
||||
- * that is not a legal address, try to proceed with the
|
||||
- * address from the QEMU command line in the hope that the
|
||||
- * address has been configured correctly elsewhere - just not
|
||||
- * reported by the device.
|
||||
- */
|
||||
- if (memcmp(&netcfg.mac, &zero, sizeof(zero)) == 0) {
|
||||
- info_report("Zero hardware mac address detected. Ignoring.");
|
||||
- memcpy(netcfg.mac, n->mac, ETH_ALEN);
|
||||
- }
|
||||
- memcpy(config, &netcfg, n->config_size);
|
||||
+ if (ret == -1) {
|
||||
+ return;
|
||||
}
|
||||
+
|
||||
+ /*
|
||||
+ * Some NIC/kernel combinations present 0 as the mac address. As that
|
||||
+ * is not a legal address, try to proceed with the address from the
|
||||
+ * QEMU command line in the hope that the address has been configured
|
||||
+ * correctly elsewhere - just not reported by the device.
|
||||
+ */
|
||||
+ if (memcmp(&netcfg.mac, &zero, sizeof(zero)) == 0) {
|
||||
+ info_report("Zero hardware mac address detected. Ignoring.");
|
||||
+ memcpy(netcfg.mac, n->mac, ETH_ALEN);
|
||||
+ }
|
||||
+
|
||||
+ memcpy(config, &netcfg, n->config_size);
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.31.1
|
||||
|
@ -0,0 +1,46 @@
|
||||
From b3d728b53abaae0c9884dfb5e9c216b1088196e3 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Eugenio=20P=C3=A9rez?= <eperezma@redhat.com>
|
||||
Date: Wed, 21 Dec 2022 12:50:13 +0100
|
||||
Subject: [PATCH 2/9] virtio_net: copy VIRTIO_NET_S_ANNOUNCE if device model
|
||||
has it
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
RH-Author: Eugenio Pérez <eperezma@redhat.com>
|
||||
RH-MergeRequest: 137: vDPA net SVQ guest announce support
|
||||
RH-Bugzilla: 2141088
|
||||
RH-Acked-by: Laurent Vivier <lvivier@redhat.com>
|
||||
RH-Acked-by: Cindy Lu <lulu@redhat.com>
|
||||
RH-Acked-by: Jason Wang <jasowang@redhat.com>
|
||||
RH-Commit: [2/4] fb04186829eb93bab3c9ececf90fa5b035ffa2ec (eperezmartin/qemu-kvm)
|
||||
|
||||
Status part of the emulated feature. It will follow device model, so we
|
||||
must copy it as long as NIC device model has it set.
|
||||
|
||||
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
|
||||
Message-Id: <20221221115015.1400889-3-eperezma@redhat.com>
|
||||
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|
||||
Acked-by: Jason Wang <jasowang@redhat.com>
|
||||
(cherry picked from commit 4f93aafc8f9d731c6588f5dc5594c6a1dd1fbe66)
|
||||
---
|
||||
hw/net/virtio-net.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
|
||||
index 5935e55653..948bcf33cf 100644
|
||||
--- a/hw/net/virtio-net.c
|
||||
+++ b/hw/net/virtio-net.c
|
||||
@@ -183,6 +183,8 @@ static void virtio_net_get_config(VirtIODevice *vdev, uint8_t *config)
|
||||
memcpy(netcfg.mac, n->mac, ETH_ALEN);
|
||||
}
|
||||
|
||||
+ netcfg.status |= virtio_tswap16(vdev,
|
||||
+ n->status & VIRTIO_NET_S_ANNOUNCE);
|
||||
memcpy(config, &netcfg, n->config_size);
|
||||
}
|
||||
}
|
||||
--
|
||||
2.31.1
|
||||
|
@ -148,7 +148,7 @@ Obsoletes: %{name}-block-ssh <= %{epoch}:%{version} \
|
||||
Summary: QEMU is a machine emulator and virtualizer
|
||||
Name: qemu-kvm
|
||||
Version: 7.2.0
|
||||
Release: 5%{?rcrel}%{?dist}%{?cc_suffix}
|
||||
Release: 6%{?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)
|
||||
@ -272,6 +272,24 @@ Patch61: kvm-accel-introduce-accelerator-blocker-API.patch
|
||||
Patch62: kvm-KVM-keep-track-of-running-ioctls.patch
|
||||
# For bz#1979276 - SVM: non atomic memslot updates cause boot failure with seabios and cpu-pm=on
|
||||
Patch63: kvm-kvm-Atomic-memslot-updates.patch
|
||||
# For bz#2141088 - vDPA SVQ guest announce support
|
||||
Patch64: kvm-virtio_net-Modify-virtio_net_get_config-to-early-ret.patch
|
||||
# For bz#2141088 - vDPA SVQ guest announce support
|
||||
Patch65: kvm-virtio_net-copy-VIRTIO_NET_S_ANNOUNCE-if-device-mode.patch
|
||||
# For bz#2141088 - vDPA SVQ guest announce support
|
||||
Patch66: kvm-vdpa-handle-VIRTIO_NET_CTRL_ANNOUNCE-in-vhost_vdpa_n.patch
|
||||
# For bz#2141088 - vDPA SVQ guest announce support
|
||||
Patch67: kvm-vdpa-do-not-handle-VIRTIO_NET_F_GUEST_ANNOUNCE-in-vh.patch
|
||||
# For bz#2122523 - Secure guest can't boot with maximal number of vcpus (248)
|
||||
Patch68: kvm-s390x-pv-Implement-a-CGS-check-helper.patch
|
||||
# For bz#2163701 - [s390x] VM fails to start with ISM passed through
|
||||
Patch69: kvm-s390x-pci-coalesce-unmap-operations.patch
|
||||
# For bz#2163701 - [s390x] VM fails to start with ISM passed through
|
||||
Patch70: kvm-s390x-pci-shrink-DMA-aperture-to-be-bound-by-vfio-DM.patch
|
||||
# For bz#2163701 - [s390x] VM fails to start with ISM passed through
|
||||
Patch71: kvm-s390x-pci-reset-ISM-passthrough-devices-on-shutdown-.patch
|
||||
# For bz#2149191 - [RFE][guest-agent] - USB bus type support
|
||||
Patch72: kvm-qga-linux-add-usb-support-to-guest-get-fsinfo.patch
|
||||
|
||||
%if %{have_clang}
|
||||
BuildRequires: clang
|
||||
@ -1300,6 +1318,25 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Jan 30 2023 Miroslav Rezanina <mrezanin@redhat.com> - 7.2.0-6
|
||||
- kvm-virtio_net-Modify-virtio_net_get_config-to-early-ret.patch [bz#2141088]
|
||||
- kvm-virtio_net-copy-VIRTIO_NET_S_ANNOUNCE-if-device-mode.patch [bz#2141088]
|
||||
- kvm-vdpa-handle-VIRTIO_NET_CTRL_ANNOUNCE-in-vhost_vdpa_n.patch [bz#2141088]
|
||||
- kvm-vdpa-do-not-handle-VIRTIO_NET_F_GUEST_ANNOUNCE-in-vh.patch [bz#2141088]
|
||||
- kvm-s390x-pv-Implement-a-CGS-check-helper.patch [bz#2122523]
|
||||
- kvm-s390x-pci-coalesce-unmap-operations.patch [bz#2163701]
|
||||
- kvm-s390x-pci-shrink-DMA-aperture-to-be-bound-by-vfio-DM.patch [bz#2163701]
|
||||
- kvm-s390x-pci-reset-ISM-passthrough-devices-on-shutdown-.patch [bz#2163701]
|
||||
- kvm-qga-linux-add-usb-support-to-guest-get-fsinfo.patch [bz#2149191]
|
||||
- Resolves: bz#2141088
|
||||
(vDPA SVQ guest announce support)
|
||||
- Resolves: bz#2122523
|
||||
(Secure guest can't boot with maximal number of vcpus (248))
|
||||
- Resolves: bz#2163701
|
||||
([s390x] VM fails to start with ISM passed through)
|
||||
- Resolves: bz#2149191
|
||||
([RFE][guest-agent] - USB bus type support)
|
||||
|
||||
* Tue Jan 17 2023 Miroslav Rezanina <mrezanin@redhat.com> - 7.2.0-5
|
||||
- kvm-virtio-introduce-macro-VIRTIO_CONFIG_IRQ_IDX.patch [bz#1905805]
|
||||
- kvm-virtio-pci-decouple-notifier-from-interrupt-process.patch [bz#1905805]
|
||||
|
Loading…
Reference in New Issue
Block a user